我有模型A,它有很多模型B场景。我已按以下方式定义了依赖项:
class A extends AppModel {
var $hasMany = array(
'B' => array(
'className' => 'A',
'foreignKey' => 'keyword_id',
'dependent' => true
)
);
A类有以下栏目:
keyword
created
B类(表B)有以下栏目:
keyword_id
category_id
我的问题是,当我执行下面的代码时,我希望表B具有对应于keyword_id的keyword_id和category_id。
$data = array(
'A' => array(
'keyword' ( => 'zzzzz'
),
'B' => array(
3,4,5
)
);
$this->A->saveAll($data);
当我执行以下操作时,脚本表B仅对相应的keyword_id具有“NUll”。还有什么我需要做的不同。
答案 0 :(得分:0)
我认为您的数据格式不正确。我认为它的格式应该更像这样:
$data = array(
0 => array(
'A' => array(
'keyword' => 'zzzzzz',
'created' => '',
),
'B' => array(
0 => array(
'category_id' => 3,
),
1 => array(
'category_id' => 4,
),
etc.,
),
),
etc.,
);
答案 1 :(得分:0)
你应该有一个像user2076809建议的数据结构(顺便说一句好昵称!),如果你使用Cake 2.X,请使用saveAssociated方法,如:
$this->A->saveAssociated($data);