0

我正在实现一个带有用户模型的待办事项列表和一个带有日期属性的列表模型。在用户展示页面上,我检索了今天的待办事项列表。

如何查询前一天和/或第二天的用户待办事项列表。

欢迎大家多多指教,谢谢!

class User < ActiveRecord::Base
  before_save { self.email = email.downcase }
  before_save { self.username = username.downcase }
  has_many :to_do_lists, dependent: :destroy
  has_many :tasks, dependent: :destroy
  validates_presence_of :first_name, :last_name
  VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-]+(?:\.[a-z\d\-]+)*\.[a-z]+\z/i
  VALID_USERNAME_REGEX = /\A[a-z_0-9]+\z/i
  validates :email, presence: true,
        format: { with: VALID_EMAIL_REGEX },
        uniqueness: { case_sensitive: false }
  validates :username, presence: true,
        format: { with: VALID_USERNAME_REGEX },
        uniqueness: { case_sensitive: false }
  def name
     [first_name, last_name].compact.join(' ')
  end
end

和列表模型

class ToDoList < ActiveRecord::Base
  belongs_to :user
  has_many :tasks, dependent: :destroy
  validates_presence_of :user_id
  validates :date, presence: true, 
        uniqueness: {scope: :user_id}
end
4

1 回答 1

0

Rails 添加了许多有用的方法来Time使这种类型的查询非常直观。由于您验证用户每天只有一个待办事项列表:

 @next_day_list = @user.to_do_lists.find_by_date(Date.today.tomorrow)
 @prev_day_list = @user.to_do_lists.find_by_date(Date.today.yesterday)
于 2015-07-31T00:50:32.607 回答