= ?", DateTime.current.beginning_of_d-6ren">
gpt4 book ai didi

ruby-on-rails - rails : default scoping being cached by query cache?

转载 作者:行者123 更新时间:2023-12-03 01:25:11 27 4
gpt4 key购买 nike

我有一个像这样的动态默认范围:

default_scope :conditions => ["departure_date >= ?", DateTime.current.beginning_of_day]

当我第一天使用这个代码时就可以了。假设第一天是 2011 年 3 月 28 日

但第二天似乎仍在使用“departure_date >= 28-03-2011”

我的默认范围是否被缓存?

最佳答案

问题是,当您的应用加载时,该代码仅执行一次,因此实际日期不会改变。您需要将其更改为延迟加载:

default_scope lambda { { :conditions => ["departure_date >= ?", DateTime.current.beginning_of_day] } }

这样,每次您进行查询时都会对 Datetime.current.beginning_of_day 进行评估。

关于ruby-on-rails - rails : default scoping being cached by query cache?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5257452/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com