Обновить объект в Symfony 4?

Мой вопрос прост, но я не могу найти на него хороший ответ, у меня был объект, созданный с помощью командной строки:

php bin/console make:entity

этот объект является пользователем, который имеет несколько атрибутов (имя-адрес электронной почты-пароль)

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

php bin/console make:migration

php bin/console doctrine:migration:migrate

Но теперь я хочу просто изменить название на имя пользователя, но я не знаю, как это сделать.

В документации ничего не нашел, буду признателен за любую помощь.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
0
8 508
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Вы можете следовать аналогичной схеме:

  1. Измените поле (аннотацию) в вашей User-сущности с имени на имя пользователя.
  2. Беги bin/console doctrine:migrations:diff
  3. Беги bin/console doctrine:migrations:migrate

Команда doctrine:migrations:diff должна определить, что поле изменилось, и создать для вас соответствующий SQL-запрос, который затем будет сохранен в файле DoctrineMigrations рядом с исходным.

doctrine:migrations:migrate обнаруживает эту новую миграцию и то, что она ранее не выполнялась, сверяясь с таблицей doctrine_versions, где хранятся все выполненные версии миграции.

См. также: https://www.doctrine-project.org/projects/doctrine-migrations/en/2.1/reference/generating-migrations.html#diffing-using-the-orm

Ответ принят как подходящий

Будь осторожен: После любых изменений в ваших объектах вы должны создать новый файл миграции. На самом деле этот файл содержит все изменения, которые необходимо внести в вашу базу данных для обновления. Чтобы сгенерировать этот файл (новую версию миграции), вы можете выполнить следующие команды:

$ bin/console doctrine:cache:clear-metadata
$ bin/console doctrine:migrations:diff

После приведенных выше команд вы успешно создали файл новой версии, теперь, если вы выполните следующую команду, вы увидите, что у вас есть новый и неисполненный файл версии:

$ bin/console doctrine:migrations:status

Окончательно, чтобы выполнить файл новой версии и обновить базу данных, необходимо выполнить следующую команду:

$ bin/console doctrine:migrations:migrate --all-or-nothing

теперь ваша база обновлена ​​и в таблице migration_versions вы видите, что добавлена ​​новая версия.

Быть успешным.

Другие вопросы по теме