Мне нужно получить все задания, принадлежащие текущему пользователю, у которых дата старше, чем сегодняшняя, и мне также нужно отфильтровать задания с нулевыми отзывами.
Я пробовал следующее:
Job.joins(:user, :review).where("jobs.date < ? AND jobs.status = ? AND users.id = ?", Time.now, 3 , user.id).group("jobs.id").having("COUNT(reviews) = ?", 0)
В случае определенного идентификатора пользователя (3356) я должен получить одно задание, но не получаю.
Вот мои модели
class Job < ActiveRecord::Base
belongs_to :user
has_one :review
end
class User < ActiveRecord::Base
has_many :jobs
has_one :reviews
end
class Review < ActiveRecord::Base
belongs_to :job
belongs_to :user
end
status
это Enum (который должен быть 3, который «принят»)
Что я делаю не так?Я не уверен, как правильно структурировать SQL, так что это, вероятно, проблема.Ценю вашу помощь.