次の構造でデータを保存しようとしています:
ご覧のとおり、ユーザーとエクスペリエンステーブルの間に HABTM 関連付けがあります。また、 experiences_usersとtagsの間に別の HABTM があります。次のフォームを作成しました。
<?php echo $form->create('Experience', array('action' => 'addClassic'));?>
<?php
echo $form->input('Experience.date', array('dateFormat' => 'DMY'));
echo $form->input('Experience.time', array('timeFormat' => '24', 'empty' => array(-1 => '---'), 'default' => '-1'));
echo $form->input('Experience.name');
echo $form->input('ExperiencesUser.1.note');
echo $form->input('ExperiencesUser.1.rating');
//echo $form->input('Tags.Tags', array('multiple' => 'multiple', 'options' => $tags));
//echo $form->input('ExperiencesUser.1.Tags', array('multiple' => 'multiple', 'options' => $tags));
//echo $form->input('ExperiencesUser.1.Tags.Tags', array('multiple' => 'multiple', 'options' => $tags));
echo $form->input('ExperiencesUser.1.confirmed', array('type' => 'hidden', 'value' => '1'));
echo $form->input('ExperiencesUser.1.user_id', array('type' => 'hidden'));
echo $form->input('ExperiencesUser.2.user_id', array('type' => 'hidden'));
?>
<?php echo $form->end(__('Add', true));?>
そして、すべてがうまく機能します。saveAllメソッドは、新しいエクスペリエンスを作成し、この新しいエクスペリエンスを 2 人のユーザーに割り当て ( Experiences_users を介して)、設定を行います。
私を悩ませているのは、新しく作成されたexperience_usersレコード(最初のレコード)にいくつかのタグを割り当てたいということです。コメントされたもののいくつかを介して行う必要があると思いました。このコメント化されたコードのすべての行はフォームを作成し、データを$this->dataに送信しますが、保存されることはありません。
私の質問は次のとおりです: 私の例で $this->data または $form->input の正しい構文は何ですか?