2014-09-29 74 views
0

爲了與另一個基於非Symfony的應用程序共享數據庫,我想更改用戶表的某些字段名稱。Symfony UserBundle:覆蓋數據庫中的字段名稱

自定義實體的定義是這樣的:

<?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」,但它只能被聲明一次

我錯過了什麼?

+0

重複的問題。這個問題有一個答案:http://stackoverflow.com/a/12147185/2106834 – Jonny 2015-06-26 12:49:21

回答

0

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

+0

我不想調整DB到應用程序,但應用程序到數據庫,因此架構更新不能是解決方案。 – 2014-10-20 20:11:20

+0

這是一個比完整答案給出建議更多的評論。 – gunr2171 2014-10-20 20:36:15

0

最後我放棄了這一點,改爲改用其他應用程序。

相關問題