Удалить "старые" ассоциации с помощью saveAll - PullRequest
0 голосов
/ 18 января 2011

У меня проблема с ассоциациями, то есть с Проектом, на который есть ссылки.На странице редактирования проекта есть поля для самого проекта и некоторые для связанных ссылок:

echo $form->input('Link.0.url');
echo $form->input('Link.1.url');
echo $form->input('Link.2.url');

В контроллере проекта я использую $ this-> Project-> saveAll ($ this-> data), который сохраняетПроект и три связанные ссылки.Хорошо.Теперь при обновлении проектов я хочу иметь возможность удалять некоторые ссылки.Я хочу, чтобы все было просто и удалите все Link.n. *, например, с помощью jQuery.К сожалению, это не работает должным образом: удаленная ассоциация все еще существует после использования saveAll, даже если она больше не указывается в $ this-> data.

CakePHP очень специфичен для сохранения ассоциаций.К сожалению, я не могу найти что-то об их удалении.Я надеюсь, что кто-то понимает мою проблему и знает, что делать.

1 Ответ

0 голосов
/ 20 января 2011

, если он уже находится в базе данных, вам нужно будет использовать delete () или deleteAll ()

...