私はそれを機能させるために3日間試みています.stack/forums/googleで見たものはすべて既に適用しています. サブスクライバー habtm subrcriberlist とサブスクライバー リストは、多くのサブスクライバーに属することができます。
/* Subscriber model*/
public $hasAndBelongsToMany =
array(
'Subscriberslists' => array(
'className' => 'Subscriberslist',
'joinTable' => 'subscribers_subscriberslists',
'foreignKey' => 'subscriber_id',
'associationForeignKey' => 'subscriberslist_id',
'unique' => true
)
);
/* Subscriberslist model*/
public $hasAndBelongsToMany =
array(
'Subscribers' => array(
'className' => 'Subscriber',
'joinTable' => 'subscribers_subscriberslists',
'foreignKey' => 'subscriberslist_id',
'associationForeignKey' => 'subscriber_id',
'unique' => true
)
);
データは、私が見たすべての投稿に示されているようにフォーマットされています:
array(
'Subscriberslist' => '1',
'Subscriber' => array(
'Subscriber' => array(
(int) 0 => '1',
(int) 1 => '2',
(int) 2 => '3'
)
)
その後、結合テーブルにデータを保存できませんでした。Cake は新しいサブスクライバーのみを保存します。これが私のコントローラーです:
if (!$this->Subscriber->saveAll($this->request->data){ //error}else{//no error}
私が間違っていることを教えていただけますか?ありがとう