[英]Symfony2: how to implement custom user login & registration - get rid of FOSUSerBundle
[英]Symfony2 FOSUserBundle - simple way to get rid of the email fields in user
當我創建一個將用於研究健康領域患者的Web應用程序時,我希望我的所有用戶都是完全匿名的。 我是否可以通過簡單的方式擺脫email和email_canonical字段而無需在包本身中重寫內容,例如通過在我自己的包中對我的User Class執行某些操作?
編輯:我做了這個:
/**
* @ORM\Column(nullable=true)
**/
protected $email;
/**
* @ORM\Column(nullable=true)
**/
protected $emailCanonical;
在我的用戶實體類中。 Bu twhen我做php app / console doctrine:schema:update --force我得到
[學說\\ ORM \\映射\\ MappingException]
實體'Pan100 \\ MoodLogBundle \\ Enti上的列'email'的重復定義
ty \\ User'在字段或鑒別器列映射中。
編輯2:忘了說這是在擴展FOUserBundle的模型類User作為BaseUser的類中完成的...
好!
我做了:
...
/**
* @ORM\Entity
* @ORM\Table(name="fos_user")
* @ORM\AttributeOverrides({
* @ORM\AttributeOverride(name="email", column=@ORM\Column(nullable=true)),
* @ORM\AttributeOverride(name="emailCanonical", column=@ORM\Column(nullable=true, unique=false))
*
* })
*/
class User extends BaseUser
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
...(code emitted)
稍后我會發現是否需要更多 - 我可能必須覆蓋一些用於創建用戶的FOSUserBundle方法。 至少“php app / console fos:user:create testuser”命令需要一封電子郵件......但它不再是唯一的,所以如果我以后受阻,我可以添加字符串“none”或其他東西。 ..
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.