質問

封じ込め可能な動作を使用して、かなりシンプルなcakephp検索を試みています。

$comp = $this->Comp->find('first', array(
    'conditions' => array('Comp.id' => $id),
    'contain' => array(
        'Comp.id' => array(
            'fields' => array('Comp.id'),
        ),
        'Slot' => array(
            'fields' => array(
                'Slot.start_time',
                'Slot.end_time'
            )
        ),
        'Team'
    )
));

...しかし、実行すると警告が表示されます。

警告(512):モデル「comp」はモデル「comp」に関連付けられていません[core/cake/libs/model/model/cantable.php、line 363]に関連付けられていません。

私のcompモデルの開始は次のとおりです。

var $name = 'Comp';
var $hasMany = array('Team', 'Round', 'Match');
var $belongsTo = array('Generation');
var $hasAndBelongsToMany = array('Slot');
var $actsAs = array('Containable');

CakePHP 1.3.6を使用しています

何がこれを引き起こしているのでしょうか?

役に立ちましたか?

解決

$comp = $this->Comp->find('first', array(
    'conditions' => array('Comp.id' => $id),
    'fields'     => array('Comp.id'),
    'contain'    => array(
        'Slot'       => array(
            'fields'     => array(
                'Slot.start_time',
                'Slot.end_time'
            )
        ),
        'Team'
    )
));

あなたはそれに言った contain 関連 Comp.id, 、モデルを意味します Comp に関連しています Comp, 、存在しません。あなたはおそらく単に設定するつもりでした fields のオプション Comp モデル自体?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top