0

这看起来很简单,但我的头撞在墙上。

我有一个简单的 HABTM 关系(艺术家有许多艺术家),我试图保存一些数据。

我有两个表: 艺术家:(id,name,created,modified) artist_related:(id,artist_id,related_id)

这是我的代码的样子,models/artist.php

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 Keys)被插入到艺术家表中。相关艺术家没有,并且没有任何内容插入到连接表中。

我究竟做错了什么?

4

1 回答 1

0

我没有得到你想要做的事情,一旦通过这个链接,这可能会有所帮助

http://book.cakephp.org/1.3/en/view/1034/Saving-Related-Model-Data-HABTM

于 2012-10-31T05:03:41.907 回答