Suchen Sie alle Datensätze, deren Anzahl einer Assoziation größer als Null ist
Ich versuche etwas zu tun, von dem ich dachte, es wäre einfach, aber es scheint nicht so zu sein.
Ich habe ein Projektmodell mit vielen offenen Stellen.
class Project < ActiveRecord::Base
has_many :vacancies, :dependent => :destroy
end
Ich möchte alle Projekte erhalten, die mindestens 1 freie Stelle haben. Ich habe so etwas ausprobiert:
Project.joins(:vacancies).where('count(vacancies) > 0')
aber es heißt
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)
.