扩展用户FOSUserBundle Symfony2


extends user FOSUserBundle Symfony2

我有以下问题,当我尝试扩展用户

在FormType:

class RegistrationFormType extends BaseType{
public function buildForm(FormBuilder $builder, array $options)
{
    parent::buildForm($builder, $options);
    // add your custom field
    $builder->add('telephone')
            ->add('adress')
            ->add('CPF');
}
public function getName()
{
    return 'project_user_registration';
}

}

和我有:

* @ORM'Table(name="fos_user")
* @ORM'Entity
* @ORM'InheritanceType("SINGLE_TABLE")
* @ORM'DiscriminatorColumn(name="type", type="string")
* @ORM'DiscriminatorMap({"user" = "User", "individual" = "Individual"})
class User extends BaseUser{
 /**
 * @var string $adress
 *
 * @ORM'Column(name="adress", type="string", length=255)
 */
 private $adress;
 /**
 * @var string $telephone
 *
 * @ORM'Column(name="telephone", type="string", length=20)
 */
 private $telephone;
 //getters and setters...
}
* @ORM'Table()
* @ORM'Entity
class Individual extends User{
   /**
    * @var string $CPF
    *
    * @ORM'Column(name="CPF", type="string", length=14)
    */
    private $CPF;

    public function setCPF($cPF)
    {
       $this->CPF = $cPF;
    }

    public function getCPF()
    {
       return $this->CPF;
    }
}

当我这样做的时候,我得到了一个错误:

在类"Project'UserBundle'Entity'User"中不存在属性"CPF"、方法"getCPF()"和方法"isCPF()"

有人能帮帮我吗?

您可能已经将FOSUserBundle配置为使用您的User实体,而它不知道Individual。是否有理由需要再次扩展User,或者可以将属性和方法添加到该类?

否则,您可以配置FOS使用Individual作为用户模型类,它不会抛出该错误。