Я пытаюсь написать метод, который выбирает подмножество всех членов класса User. Вот моя попытка:
def self.stats_users(date)
self.where("employee = false AND last_sign_in_at >= ?", date)
end
Я пытался вызвать эту функцию следующим образом: User.stats_user('2011-04-14')
Однако этот метод выполняет этот оператор sql:
SELECT "users".* FROM "users" WHERE (employee = false AND last_sign_in_at >= '2011-04-14')
когда он должен просто выполнить:
SELECT * FROM "users" WHERE (employee = false AND last_sign_in_at >= '2011-04-14')
Я предполагаю, что мой реальный вопрос вращается вокруг написания методов, которые воздействуют на всех членов класса, и моего относительного незнания, где размещать эти методы и как их вызывать. Мне также кажется, что у меня возникли небольшие проблемы с пониманием того, как ActiveRecord преобразует операторы в raw sql.