Коллекции Propel2 исчезают при обновлении
Я и мои коллеги написали десяток веб-приложений с использованием Symfony2 и Propel1. Сейчас мы пытаемся использовать Propel2, но сталкиваемся со следующей проблемой при переносе приложения с Propel1 на Propel2.
В нашей простой схеме родительский объект, Auteur
(автор) обладает коллекцией детей Livre
(книга) объекты. Мы используем форму Symfony для создания Auteur
с коллекцией Livres
объекты. В этом случае Auteur
а также Livres
правильно сохранены в базе данных.
Тем не менее, когда мы обновляем Auteur
объект, не касаясь коллекции Livres
Коллекция очищается.
Мы не могли определить, была ли это ошибка в Propel2 (или, менее вероятно, Symfony2) или мы делаем что-то неправильно. Почти такой же код (несколько адаптированный для Propel1) работает без проблем: Livres
сбор не опустошен на Auteur
Обновить.
Мы опубликовали минимальный проект, воспроизводящий проблему. Чтобы проверить это с Propel2, пожалуйста, сделайте:
git clone https://github.com/spyrit/MinimalS2P2.git
cd MinimalS2P2
composer install
app/console propel:build
app/console propel:migration:diff
app/console propel:migration:migrate
Чтобы проверить это с Propel1, используйте propel1
ветка:
git checkout propel1
composer install
app/console propel:build
app/console propel:migration:generate-diff
app/console propel:migration:migrate
Мы будем благодарны за любые подсказки по этому вопросу.
1 ответ
Подход был верным, но в Propel2 была ошибка, которая вызвала эту проблему.
Это было исправлено в https://github.com/propelorm/Propel2/pull/1027