同一模型上的CakePHP(1.3)HABTM saveAll()不工作
这看起来很简单,但我的头撞到了墙上 我有一个简单的HABTM关系(艺术家有很多艺术家),我试图保存一些数据 我有两张桌子: 艺术家:(id、名称、创建、修改) 艺术家相关:(id,艺术家id,相关id) 下面是我的代码的样子,models/artist.php:同一模型上的CakePHP(1.3)HABTM saveAll()不工作,php,mysql,cakephp,has-and-belongs-to-many,cakephp-model,Php,Mysql,Cakephp,Has And Belongs To Many,Cakephp Model,这看起来很简单,但我的头撞到了墙上 我有一个简单的HABTM关系(艺术家有很多艺术家),我试图保存一些数据 我有两张桌子: 艺术家:(id、名称、创建、修改) 艺术家相关:(id,艺术家id,相关id) 下面是我的代码的样子,models/artist.php: class Artist extends AppModel { var $name = 'Artist'; var $hasAndBelongsToMany = array( 'Related' => ar
class Artist extends AppModel {
var $name = 'Artist';
var $hasAndBelongsToMany = array(
'Related' => array(
'className' => 'Artist',
'joinTable' => 'artists_related',
'foreignKey' => 'artist_id',
'associationForeignKey' => 'related_id'
)
);
function saveArtist($slug) {
$data = array(
'Artist' => array(
'name' => 'Alicia Keys'
),
'Related' => array(
array(
'name' => 'Mariah Carey'
),
array(
'name' => 'Beyoncé'
)
)
);
$result = $this->saveAll($data);
saveAll()的结果是将1行(Alicia密钥)插入到artists表中。相关的美工人员不会这样做,并且不会向联接表中插入任何内容
我做错了什么?我不明白你想做什么,一旦通过此链接,这可能会有所帮助
谢谢你的回答。我试图在艺术家表中保存一位艺术家及其相关艺术家。以及“艺术家”相关表中的关系。它与页面中的示例不同,因为它不在两个不同的模型之间,而是同一个模型的habtm。在cookbook中,您可以通过选择下拉菜单选择其他艺术家,$this->set('artists',$this->Artist->find('list');在视图$this->Form->input('artists');