![]() |
1
1
对。根据编写测试的方式,Rails查询缓存有时可能会干扰。有时,Rails足够智能,可以跟踪何时需要清除缓存(当对象之间存在明显的关联时),但下面是一个不按预期工作的示例:
通常,如果在同一测试中两次执行同一查询,则应调用。在尝试执行第二个查询之前,请重新加载数据。就像这样:
根据我的个人经验,最好考虑用不同的方式编写测试,而不是使用上述方法。例如,这里有一种更好的方法来编写上述内容,它不会受到查询缓存的影响:
|
![]() |
2
0
我从来没有遇到过ActiveRecord的问题。我的理解是缓存只在读取时进行,所以总是执行保存。 |
![]() |
JBlake · 唯一验证基于datetime属性的存在,而不是值? 6 年前 |
![]() |
Serge · Yii-查找具有零相关记录的记录 6 年前 |
![]() |
waynard · Rails 5左外连接与WHERE查询相结合 6 年前 |
![]() |
OKMantis · Ruby on Rails中的交叉引用表 6 年前 |
![]() |
Grey · 访问不同子控制器中的不同关系 6 年前 |