在CakePHP中,在查找查询的contain
中设置条件是好的还是坏的做法,如:
$data = $this->SomeModel->find('all', array(
'contain' => array(
'AnotherModel' => array(
'conditions' => array(
// some conditions
)
)
)
));
在哪种情况下,将条件置于包含内是有用的,何时应该使用它。对不起,这对我来说仍然很困惑。
谢谢
答案 0 :(得分:0)
我不确定这是不是一个好主意......首先,我要假设这个具体案例要求你指定这种情况特有的条件,即不够通用将SomeModel
模型关系标准转换为AnotherModel
。
我的建议是你应该将这些条件放在你的整体查找条件中,因为包含指定要返回的链接模型(控制引擎盖下的连接)。与在SQL中一样,您可以加入另一个表,并在WHERE
子句中指定要匹配的记录。
From the manual,您可以指定您的包含条件,但它们不会影响不加入您的模型的结果,如整体条件将
我会这样做:
$data = $this->SomeModel->find('all', array(
'contain' => array('AnotherModel'),
'conditions' => array(
// some conditions relating to AnotherModel
)
));