Я создал BaseBundle с SuperUser MappedSuperClass, который расширяет FOSUserBundle User
use FOS\UserBundle\Model\User as FOSUser;
/*
* @ORM\MappedSuperclass
*/
class SuperUser extends FOSUser
{
/**
* @var string
* @ORM\Column(name="locale", type="string", nullable=true)
*/
protected $locale;
}
В моем проекте я установил свой BaseBundle. Я создал сущность User, которая расширяет мой класс SuperUser.
/*
* User class
*/
class User extends SuperUser
{
/**
* @var string
*/
private $fullName;
}
Проблема в том, что когда я создаю таблицу, Doctrine видит только свойства FOSUser и User, но не мои свойства SuperUser. Я вижу только свойства fullName и FOSUser.
Мой класс SuperUser обойден ..
Я заметил, что класс User имеет нотацию YAML, SuperUser — аннотацию PHP, а класс FOSUser — нотацию XML. Я не знаю, если это создает проблемы.
Из документации:
Пакет может принимать только один формат определения метаданных. Например, невозможно смешать определения метаданных YAML с аннотированными определениями классов сущностей PHP.
Попробуйте добавить YML-отображение вашего MappedSuperClass
Я создал BaseBundle с SuperUser MappedSuperClass, который расширяет FOSUserBundle User
use FOS\UserBundle\Model\User as FOSUser;
/*
* @ORM\MappedSuperclass
*/
class SuperUser extends FOSUser
{
/**
* @var string
* @ORM\Column(name="locale", type="string", nullable=true)
*/
protected $locale;
}
В моем проекте я установил свой BaseBundle. Я создал сущность User, которая расширяет мой класс SuperUser.
/*
* User class
*/
class User extends SuperUser
{
/**
* @var string
*/
private $fullName;
}
Проблема в том, что когда я создаю таблицу, Doctrine видит только свойства FOSUser и User, но не мои свойства SuperUser. Я вижу только свойства fullName и FOSUser.
Мой класс SuperUser обойден ..
Я заметил, что класс User имеет нотацию YAML, SuperUser — аннотацию PHP, а класс FOSUser — нотацию XML. Я не знаю, если это создает проблемы.
Из документации:
Пакет может принимать только один формат определения метаданных. Например, невозможно смешать определения метаданных YAML с аннотированными определениями классов сущностей PHP.
Попробуйте добавить YML-отображение вашего MappedSuperClass