我正在为我的项目扩展 FOSUserBundle,但我不希望电子邮件字段是唯一的,因此扩展了 schema.xml 以从 xml 中删除唯一标签并相应地构建模型。但是当我尝试注册时,它仍然会通过 propel.xml 检查电子邮件的唯一性。
username_canonical fos_user.username.already_used</option>--> 注册配置文件
<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>
我不想让那个独特的属性出现在独特的对象中。我无法覆盖它,因为它在 FOSUserBundle Dependecy 注入中加载 xml 时需要特定路径
$loader = new XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
if ('custom' !== $config['db_driver']) {
$loader->load(sprintf('%s.xml', $config['db_driver']));
}
foreach (array('validator', 'security', 'util', 'mailer') as $basename) {
$loader->load(sprintf('%s.xml', $basename));
}
谁能帮助我,我怎样才能删除propel.xml中定义的唯一约束