1
我正在编写一个范围,该范围应该查找状态为open并且日期时间大于当前时间的任何调用。我的语法有点模糊,有人能帮助我指出正确的方向。范围评估Rails 3中的时间
例失败:
scope :scheduled_calls, where(:call_status => "open", :transfer_date > Time.now)
我正在编写一个范围,该范围应该查找状态为open并且日期时间大于当前时间的任何调用。我的语法有点模糊,有人能帮助我指出正确的方向。范围评估Rails 3中的时间
例失败:
scope :scheduled_calls, where(:call_status => "open", :transfer_date > Time.now)
您需要使用lambda来评估的范围时,它的名字,而不是在类被加载到。
scope :scheduled_calls, lambda { where(["call_status = ? and transfer_date > ?", "open", Time.now]) }
试试这个:
scope :scheduled_calls, where("call_status = 'open' and transfer_date > ?", Time.now)
'lambda'应在此处使用,以避免Time.now'的'缓存 – rubish 2012-07-20 21:58:40