0

Containable 動作を使用して、かなり単純な 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/behaviors/containable.php、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 を使用しています

これを引き起こしている可能性のあるアイデアはありますか?

4

1 に答える 1

2
$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モデルを意味します。モデル自体のオプションを単純に設定するつもりだったのでしょうか。CompCompfieldsComp

于 2011-01-20T02:44:14.423 に答える