Я пытаюсь фильтровать записи, назначенные на определенный день (сегодня), используя этот запрос:Rails фильтр на сегодняшний день не возвращая никаких результатов
assignments = p.assignments.where("assigned_date = ?", Date.today)
Даже если я знаю, что существуют эти записи, я всегда получаю пустой результат назад. Я также пробовал ... где (: assign_date => Date.today) без везения.
Схема базы данных:
# == Schema Information
#
# Table name: assignments
#
# id :integer not null, primary key
# name :string(255)
# rep :integer
# set :integer
# instructions :text
# created_at :datetime not null
# updated_at :datetime not null
# player_id :integer
# actual_percentage :float
# predicted_percentage :float
# assigned_date :date
#
И в консоли, когда я печатаю
p.assignments.first.assigned_date == Date.today
он возвращает истину. Любая идея, что я делаю неправильно?
@ user1742188, не так ли? – ted
Ну, решение здесь само по себе не сработало. Но я использовал ''assign_date BETWEEN? AND? ', @date, @date + 1.day'', и это сработало. Полагаю, это потому, что это объект Date, а не datetime. – user1742188