Mysql Yii-CActive record-如何处理服务器查询缓存
我正在为我的webapp使用Yii框架(它使用ACtiveRecord)。 在ACtiveRecord的后面,框架管理来自数据库的所有查询 我的问题是我在一个共享服务器上,结果服务器启用了查询缓存,这在美国是一个难题。我真的需要绕过查询缓存。 FlUSH对我不起作用,因为我没有重新加载权限 如果我使用每个ActiveRecord数据库获取作为一个粗略的mySQL查询,我想我可以将查询本身设置为禁用缓存的方式,比如使用NO_cache标记,或者使用包含当前时间戳的错误查询词(导致每个查询都是不同的查询文本) 我想问你们的问题是Yii/ActiveRecord方案的最佳方式是什么。 我可以更改findAll()函数的实现吗? 我有一个CActiveRecord的子类,所以如果我能在那里做点什么,那就太完美了 很抱歉问了这么长的问题。Mysql Yii-CActive record-如何处理服务器查询缓存,mysql,activerecord,yii,query-cache,Mysql,Activerecord,Yii,Query Cache,我正在为我的webapp使用Yii框架(它使用ACtiveRecord)。 在ACtiveRecord的后面,框架管理来自数据库的所有查询 我的问题是我在一个共享服务器上,结果服务器启用了查询缓存,这在美国是一个难题。我真的需要绕过查询缓存。 FlUSH对我不起作用,因为我没有重新加载权限 如果我使用每个ActiveRecord数据库获取作为一个粗略的mySQL查询,我想我可以将查询本身设置为禁用缓存的方式,比如使用NO_cache标记,或者使用包含当前时间戳的错误查询词(导致每个查询都是不同的
宜兰默认范围 模型类可以有一个默认作用域,该作用域将应用于有关模型的所有查询(包括关系查询)。为此,我们重写CActiveRecord::defaultScope方法,如下所示
class Content extends CActiveRecord
{
public function defaultScope()
{
return array(
'condition'=>"1<='".time()."'",
);
}
}
类内容扩展了CActiveRecord
{
公共函数defaultScope()
{
返回数组(
“条件”=>“1默认范围
模型类可以有一个默认作用域,该作用域将应用于有关模型的所有查询(包括关系查询)
class Content extends CActiveRecord
{
public function defaultScope()
{
return array(
'condition'=>"1<='".time()."'",
);
}
}
类内容扩展了CActiveRecord
{
公共函数defaultScope()
{
返回数组(
'条件'=>“1