CakePHP-通过关联保存hasMany
我目前正试图找出如何通过这种关系来拯救一个hasMany 我的桌子是: 卡片:CakePHP-通过关联保存hasMany,cakephp,Cakephp,我目前正试图找出如何通过这种关系来拯救一个hasMany 我的桌子是: 卡片: id, 名称 颜色: id, 名称 颜色 卡片颜色(与型号CardColor关联): id, 卡号, 颜色标识, 成本 通过联想有很多人: Card hasMany CardColor Color hasMany CardColor CardColor belongsTo Card CardColor belongsTo Color 在Card::beforeSave()中,我将重建$data变量,使其具有以下结构
id,
名称
颜色:
id,
名称
颜色
卡片颜色(与型号CardColor关联):
id,
卡号,
颜色标识,
成本
通过联想有很多人:
Card hasMany CardColor
Color hasMany CardColor
CardColor belongsTo Card
CardColor belongsTo Color
在Card::beforeSave()
中,我将重建$data
变量,使其具有以下结构:
array(
'Card' => array(
'name' => 'theCard',
'CardColor' => array(
array(
'card_id' => 4,
'color_id' => 5,
'cost' => 2
),
array(
'card_id' => 5,
'color_id' => 2,
'cost' => 3
)
)
)
)
但是,我不知道如何获取我当前插入的卡的卡号。是否有更简单的方法通过关联保存hasMany(例如在保存时以某种方式自动获取卡id)?尝试以下方法:
- 在模型中使用$this->Card-create()//或仅使用$this->create()
- 在Card::beforeSave()中,不要设置索引CardColor[i][Card\u id]
- 按以下方式保存:$this->saveAssociated($data)
array('deep'=>true)
而不是使用saveAssociated($data)
。