Я недавно решил писать на симфонии.
Аннотации мне не понравились ибо комментарий должен оставатся коментарием.
Я создал описание в таблице AppBundle/Resources/config/doctrine/User.orm.yml
# src/AppBundle/Resources/config/doctrine/User.orm.yml
AppBundle\Entity\User:
type: entity
table: users
id:
id:
type: integer
generator:
strategy: AUTO
fields:
is_active:
type: bool
role:
type: choice
type_options:
expanded: true
choices: { 'ROLE_USER': 'User', 'ROLE_ADMIN': 'Administrator' }
Сам код сущности
src/AppBundle/Entity до генерации
<?php
namespace AppBundle\Entity;
class User
{
protected $id;
protected $is_active;
protected $role;
Набрал чтобы сгенерировать геттеры и сеттеры
php bin/console doctrine:generate:entities AppBundle/Entity/User
<?php
namespace AppBundle\Entity;
class User
{
protected $id;
protected $is_active;
protected $role;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set isActive
*
* @param \bool $isActive
*
* @return User
*/
public function setIsActive(\bool $isActive)
{
$this->is_active = $isActive;
return $this;
}
/**
* Get isActive
*
* @return \bool
*/
public function getIsActive()
{
return $this->is_active;
}
/**
* Set role
*
* @param \choice $role
*
* @return User
*/
public function setRole(\choice $role)
{
$this->role = $role;
return $this;
}
/**
* Get role
*
* @return \choice
*/
public function getRole()
{
return $this->role;
}
}
После того как решил обновить схему пишет
php bin/console doctrine:schema:update --force
[Symfony\Component\Debug\Exception\FatalErrorException]
Compile Error: Scalar type declaration 'bool' must be unqualified