每个查询中的条件,CakePHP 2.5.4
Condition in every query, CakePHP 2.5.4
我想问一下,是否有办法(假设在模型 class 中)设置每个查询中必须存在的条件。
示例:
模型 A 的现场很棒。我希望在使用 $this->A->find('all') 时使用 WHERE awesome=1 进行 sql 查询,但我希望每次查找时都使用此条件而不每次都指定它。
据我搜索,指定两个模型之间的关联是可能的
在 cakePHP 中使用条件
$client = $this->Client->find('all', array('conditions' =>array('LastName like' => "%something%")));
在 AppModel.php
中使用 beforeFind
回调。
您可以修改 $query 参数...
然后,您想要添加该条件的每个模型都应该利用该行为(通过 $actsAs
变量。
在行为中,您可以添加一个beforeFind()
方法。在该方法中,您可以将任何内容添加到 'conditions' 数组。
因此,每个 find()
你 运行 上的模型都会 运行 那 beforeFind()
,并在 运行 之前获取添加到它的条件实际发现。
我想问一下,是否有办法(假设在模型 class 中)设置每个查询中必须存在的条件。
示例: 模型 A 的现场很棒。我希望在使用 $this->A->find('all') 时使用 WHERE awesome=1 进行 sql 查询,但我希望每次查找时都使用此条件而不每次都指定它。
据我搜索,指定两个模型之间的关联是可能的
在 cakePHP 中使用条件
$client = $this->Client->find('all', array('conditions' =>array('LastName like' => "%something%")));
在 AppModel.php
中使用 beforeFind
回调。
您可以修改 $query 参数...
然后,您想要添加该条件的每个模型都应该利用该行为(通过 $actsAs
变量。
在行为中,您可以添加一个beforeFind()
方法。在该方法中,您可以将任何内容添加到 'conditions' 数组。
因此,每个 find()
你 运行 上的模型都会 运行 那 beforeFind()
,并在 运行 之前获取添加到它的条件实际发现。