Генератор сущности Doctrine / Symfony и генерирующий объект из одной таблицы

У меня уже несколько объектов, но теперь в базе данных появилась новая таблица, и я бы хотел создать объект только в этой таблице.

Я уже это видел, но у меня есть дополнительные вопросы.

У меня уже есть объект User (и таблица db). Теперь новая таблица называется «Отчет» (для нее нет сущности для нее, я хочу ее создать), и у нее есть внешний ключ для пользователя. Есть еще несколько внешних ключей.

Если я сделаю то, что предлагается в приведенном выше ответе, то есть:

$ php app/console doctrine:mapping:import --force AppBundle xml --filter="Report" $ php app/console doctrine:mapping:convert annotation ./src/AppBundle/Entity --from-database --filter="Report" $ php app/console doctrine:generate:entities AppBundle:Report --no-backup 

Будет ли генератор Doctrine попытаться изменить объект User? Или просто создаст объект Report?

Btw. Я понимаю (?), Этого не будет, потому что это отношение ManyToOne, но давайте предположим на мгновение, что это ManyToMany на мгновение.

Я знаю, что могу просто попробовать, но в последний раз, когда я выполнил doctrine:mapping:import --force command, у меня закончилось сбойное приложение, и я потратил много часов на решение этой проблемы, пока кто-то из Stackoverflow не сказал мне удалить src\AppBundle/Resources/config/doctrine/ , что помогло.

Я не думал о создании резервной копии, прежде чем запускать эту команду.

Итак, я немного боюсь этого … Теперь я создал резервную копию, но я не уверен, поможет ли это в случае неприятностей.

Это зависит от каталога /Resources/config/doctrine . Если вы очистите его и выполните описанные вами команды, будет изменен только объект Report . Если у вас есть все предыдущие сопоставления в этом каталоге, он также должен изменить объект User .

Команды будут автоматически создавать резервные копии ваших объектов для вас, поэтому у вас будет новый User.php и резервная копия в User.php~ , о которой вы должны быть осторожны, если используете управление версиями и хотите git add src/ without слишком много думая об этом. Вы не хотите добавлять эти файлы в исходный элемент управления.

В любом случае, резервные копии создаются, и вы должны использовать контроль версий поверх этого, так что вы должны быть в порядке.