Как добавить пользовательское поле в пользовательскую таблицу с помощью FOSUserBundle вручную в Symfony

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

Реализация

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

FosUserBundle требует класс User.php, который обрабатывает пользовательскую систему, этот класс был ранее создан во время реализации FOSUserBundle и должен выглядеть примерно так:

Замечания : помните, что этот класс создается где-то в вашем проекте, если вы уже реализовали пользовательский пакет.

А теперь, чтобы добавить простое поле, т. Е. «About», предыдущий класс теперь будет включать следующие методы и переменные:

about;
}
/**
* Set about
*
* @param String $about
* @return User
*/
public function setAbout($about)
{
$this->about = $about;
return $this;
}

И наконец класс должен выглядеть так:

about;
}
/**
* Set about
*
* @param String $about
* @return User
*/
public function setAbout($about)
{
$this->about = $about;
return $this;
}
}

Теперь просто обновите схему вашей базы данных, используя следующую команду (или добавьте поля в базу данных вручную):

php bin/console doctrine:schema:update --force

Теперь, если вы откроете базу данных, вы увидите новый about поле. Подробнее о столбце @ORM \ в официальной документации доктрины читайте здесь.

Полевые примеры

Следующий фрагмент показывает различные типы полей общего пользования:

Повеселись

Ссылка на основную публикацию
Adblock
detector