Cakephp habtm深部条件

Cakephp habtm深部条件,cakephp,cakephp-2.1,Cakephp,Cakephp 2.1,假设您有这些模型关系: 提供HABTM类别 您将如何构建查找条件以查找至少有一个报价的所有类别。同时,报价应为Offer.enabled=>1。因此,请查找至少有一个已启用报价的所有类别。在offer模型中检查的条件有几个,但是一旦我可以检查enabled,我想我将能够检查任何其他字段 我可以将habtm模型绑定到类别,但在这种情况下,我无法检查Offer.enabled条件。也许是用集装箱? sql查询将是: SELECT DISTINCT Category.nome from categor

假设您有这些模型关系:

提供HABTM类别

您将如何构建查找条件以查找至少有一个报价的所有类别。同时,报价应为Offer.enabled=>1。因此,请查找至少有一个已启用报价的所有类别。在offer模型中检查的条件有几个,但是一旦我可以检查enabled,我想我将能够检查任何其他字段

我可以将habtm模型绑定到类别,但在这种情况下,我无法检查Offer.enabled条件。也许是用集装箱? sql查询将是:

SELECT DISTINCT Category.nome from categories as Category
LEFT JOIN categories_offers AS CategoriesOffer
ON (CategoriesOffer.category_id = Category.id)
LEFT JOIN offers as Offer ON (CategoriesOffer.offer_id = Offer.id)
WHERE Offer.enabled = 1

谢谢

仅当
Offer.enabled=1
时,使用关系定义中的
条件
键设置关系。摘自《圣经》。例如:


非常感谢。这是好的,只要我总是需要那个条件。事实上,情况总是在变化。但是,我能够使用可链接行为获得结果。
class Category extends Model {
    public $hasAndBelongsToMany = array(
        'Offer' => array(
            'conditions' => array( 'Offer.enabled' => 1 )
        )
    );
}