2012-07-12 38 views
1

從FOSUserbundle擴展我的UserBundle,那麼哪些字段會持久保存到數據庫。我看到有一個完整的用戶類 Model/User.phpEntity/User.php如果我從FOSUserBundle延伸用戶實體

我延長我的班級爲

namespace MYS\CoreBundle\Entity; 
use FOS\UserBundle\Entity\User as BaseUser; 
use Doctrine\ORM\Mapping as ORM; 
use Symfony\Component\Validator\Constraints as Assert; 

/** 

* @ORM\Entity 

* @ORM\Table(name="fos_user") 

*/ 

class User extends BaseUser 

{ 

    /** 

* @ORM\Column(type="string", length="255") 

* 

* @Assert\NotBlank(message="Please enter your name.", groups={"Registration", "Profile"}) 

* @Assert\MinLength(limit="3", message="The name is too short.", groups={"Registration", "Profile"}) 

* @Assert\MaxLength(limit="255", message="The name is too long.", groups={"Registration", "Profile"}) 

*/ 

protected $firstName; 

我的問題是:

  1. 是否有產生的任何數據庫表FOSUSerbundle用戶實體或他們只是類,並沒有堅持

  2. 在我abov E碼將我的用戶表將只作爲名字的屬性或所有其他屬性這是在Model/User.php在FosUserBundle

  3. 哪裏是哪裏FOSUserBundle是堅持他的表的邏輯

回答

0
  1. 號你必需在更新數據庫模式和字段$ firstName將成爲fos_user中的另一列。
  2. 請參閱1.
0

1 - 是的,將創建一個表。但請記住,由於您使用您自己的方式擴展了由FOSUserBundle提供的用戶實體,因此實際的表結構可能包含FOSUserBundle實體沒有的其他字段。

2 - 您的用戶表將包含FOSUserBundle的用戶實體中定義的所有字段以及您的子類中定義的所有字段。

3 - 我無法確定是否有問題,但請仔細閱讀源代碼,您將找到答案。