У меня есть следующая ассоциация:
Группа имеет пользователя AndBelongsToMany с таблицей присоединения к groups_users.
Когда я создаю новую группу, я хочу добавить в таблицу объединения основателя группы.
Мой массив данных $ this-> выглядит следующим образом:
Array
(
[Group] => Array
(
[name] => seyufgsduifsj
[access] => 2
[founder_id] => 3
[random_key] => I6XC7uMTelpTSdq8DbtLPjqubiF7s6Pn
)
[GroupsUser] => Array
(
[user_id] => 3
[group_role_id] => 1
[random_key] => PZsDZXcoCTHw1IuvqsfURVpPX6AcZ3r2
)
)
Я попытался с помощью save () и saveAll (), но он добавил бы только группу в таблицу групп, а не ассоциацию группы пользователей.
Итак, в основном, у меня есть форма добавления, где пользователь заполняет имя группы и доступ. Затем, если данные проверяются, я добавляю еще пару значений полей в массив групп (например, random_key) и в массив объединяемой таблицы (например, user_id и group_role_id). Я хочу, чтобы Cake сначала сохранил группу, взял ее идентификатор, обновил массив таблицы соединений с соответствующим group_id, а затем сохранил и этот второй массив.
Возможно ли это прямым способом или мне нужно написать два последовательных метода save () для второго, предоставляющего последний вставленный идентификатор в первом?
Спасибо!