覆盖Yii2和Where()条件

时间:2018-02-28 07:58:08

标签: yii2

通过我的yii2应用程序,我想转向像:

这样的查询
Post::find()->andWhere(['id'=>$id])->one();

Post::find()->andWhere(['id'=>'uuid_to_bin('.$id.')'])->one();

因为此代码无处不在,所以我不想通过手动更改每个查询。所以我认为更容易就是覆盖yii2的基类之一,类似于这种方法:http://www.yiiframework.com/doc-2.0/guide-helper-overview.html#customizing-helper-classes并检查我们是否将id作为列条件,我们&# 39;只是做一些转换条件。

我应该覆盖哪个类,以便在调用andWhere()orWhere()以及where()等时,我可以轻松更新和转换查询条件?

1 个答案:

答案 0 :(得分:-1)

如果您检查了由gii和Generate ActiveQuery生成的模型。

您可以在生成的查询类中找到此代码

/*public function active()
{
    return $this->andWhere('[[status]]=1');
}*/

像这样调用函数

Post::find()->active()->one()
祝你好运