Php 从FOSUserBundle重写sprip.xml文件
我正在为我的项目扩展FOSUserBundle,但我不希望email字段是唯一的,因此扩展schema.xml以从xml中删除唯一标记,并相应地构建模型。但当我尝试注册时,它仍然会通过spreep.xml检查电子邮件的唯一性Php 从FOSUserBundle重写sprip.xml文件,php,symfony,propel,fosuserbundle,Php,Symfony,Propel,Fosuserbundle,我正在为我的项目扩展FOSUserBundle,但我不希望email字段是唯一的,因此扩展schema.xml以从xml中删除唯一标记,并相应地构建模型。但当我尝试注册时,它仍然会通过spreep.xml检查电子邮件的唯一性 <constraint name="Propel\PropelBundle\Validator\Constraints\UniqueObject"> <option name="fields">email_canonical</opti
<constraint name="Propel\PropelBundle\Validator\Constraints\UniqueObject">
<option name="fields">email_canonical</option>
<!-- PropelBundle does not support custom messages yet
<option name="message">fos_user.email.already_used</option>-->
<option name="groups">
<value>Registration</value>
<value>Profile</value>
</option>
</constraint>
用户名\u规范
fos_用户。用户名。已使用-->
登记处
轮廓
<constraint name="Propel\PropelBundle\Validator\Constraints\UniqueObject">
<option name="fields">email_canonical</option>
<!-- PropelBundle does not support custom messages yet
<option name="message">fos_user.email.already_used</option>-->
<option name="groups">
<value>Registration</value>
<value>Profile</value>
</option>
</constraint>
有谁能帮我一下吗,我如何才能删除在spreep.xml中定义的唯一约束?我自己也在努力解决这个问题,但多亏了你发布问题的方式,我找到了一个解决方案
<constraint name="Propel\PropelBundle\Validator\Constraints\UniqueObject">
<option name="fields">email_canonical</option>
<!-- PropelBundle does not support custom messages yet
<option name="message">fos_user.email.already_used</option>-->
<option name="groups">
<value>Registration</value>
<value>Profile</value>
</option>
</constraint>
关键是在您自己的bundle中扩展ValidationPass类&重写process方法。我还在resources>config>validation下将验证xml文件复制到我自己的包中,并使用了它们
<constraint name="Propel\PropelBundle\Validator\Constraints\UniqueObject">
<option name="fields">email_canonical</option>
<!-- PropelBundle does not support custom messages yet
<option name="message">fos_user.email.already_used</option>-->
<option name="groups">
<value>Registration</value>
<value>Profile</value>
</option>
</constraint>
我所做的是:
<constraint name="Propel\PropelBundle\Validator\Constraints\UniqueObject">
<option name="fields">email_canonical</option>
<!-- PropelBundle does not support custom messages yet
<option name="message">fos_user.email.already_used</option>-->
<option name="groups">
<value>Registration</value>
<value>Profile</value>
</option>
</constraint>
<constraint name="Propel\PropelBundle\Validator\Constraints\UniqueObject">
<option name="fields">email_canonical</option>
<!-- PropelBundle does not support custom messages yet
<option name="message">fos_user.email.already_used</option>-->
<option name="groups">
<value>Registration</value>
<value>Profile</value>
</option>
</constraint>