Symfony UserBundle:覆盖数据库中的字段名称

时间:2014-09-29 21:17:19

标签: symfony doctrine-orm fosuserbundle

为了与另一个非基于Symfony的应用程序共享数据库,我想更改User表的一些字段名称。

自定义实体的定义如下:

<?php
namespace Bcg\UserBundle\Entity;

use FOS\UserBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;

/**
 * @ORM\Entity
 * @ORM\Table(name="User")
 */
class User extends BaseUser
...

我试图覆盖密码字段的名称,如下所示:

/**
 * @ORM\Column(name="encrypted_password", type="string")
 */
protected $password;

但是会导致错误: MappingException:“Bcg \ UserBundle \ Entity \ User”中的属性“password”已经声明,但必须只声明一次

我错过了什么?

2 个答案:

答案 0 :(得分:0)

您是否使用$ php app/console doctrine:schema:update --force命令重新生成了架构?

答案 1 :(得分:0)

最后我放弃了这个并改变了其他应用程序。