0

モデル 1 HABTM モデル 2。Model1 のモデル クラスには、次のコードがあります。

public class Model1 extends AppModel
{
    function getResult()
    {
        $this->contain('Model2', array(
            'conditions' => array('Model2.name' => 'foo')
        ));
        $result = $this->findByRelatedId($careNoteId);
        return $result;
    }
}

結果には、関連するすべての Model2 レコードが含まれます。そのレコードの名前が「foo」の場合、Model2 レコードのみを返す必要があります。エラーはありません。条件が SQL に追加されることはありません。

Containable は AppModel のactsAsプロパティで宣言されています。

何を与える?

4

1 に答える 1

0

私の構文が間違っていました。これらの構文は正しいです:

        $this->contain(array(
            'Model2' => array(
                'conditions' => array('Model2.name' => 'foo')
            )
        ));

また

        $this->contain('Model2', array(
            'Model2' => array(
                'conditions' => array('Model2.name' => 'foo')
            )
        ));
于 2013-12-07T01:47:37.720 に答える