Tôi đang cố gắng làm điều gì đó mà tôi nghĩ nó sẽ đơn giản nhưng có vẻ như không.Tìm tất cả các bản ghi có số lượng liên kết lớn hơn không
Tôi có mô hình dự án có nhiều vị trí tuyển dụng.
class Project < ActiveRecord::Base
has_many :vacancies, :dependent => :destroy
end
Tôi muốn nhận tất cả các dự án có ít nhất 1 vị trí trống. tôi đã cố gắng một cái gì đó như thế này:
Project.joins(:vacancies).where('count(vacancies) > 0')
nhưng nó nói
SQLite3::SQLException: no such column: vacancies: SELECT "projects".* FROM "projects" INNER JOIN "vacancies" ON "vacancies"."project_id" = "projects"."id" WHERE ("projects"."deleted_at" IS NULL) AND (count(vacancies) > 0)
.
Tuy nhiên, không áp dụng nhóm theo mệnh đề này sẽ trả về nhiều đối tượng dự án cho các dự án có nhiều hơn một vị trí trống. – mackshkatz