我正在尝试制作电子邮件字段nullable
。我在这里搜索过,发现通过属性覆盖使其成为nullable
。它工作在用户数据库表上nullable
。但是,当我将电子邮件字段留空时,在注册页面上显示“请输入电子邮件”
/**
* @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
{
// ...
}
->add('email', NULL, array( 'required' => false, 'label' => false, ))
答案 0 :(得分:0)
在RegisterFormType.php中更改为
->add('email', LegacyFormHelper::getType('Symfony\Component\Form\Extension\Core\Type\EmailType'), array( 'required' => false, 'label' => 'form.email', 'translation_domain' => 'FOSUserBundle'))
答案 1 :(得分:0)
FosUserBundle正在使用XML进行约束。通过覆盖资源fosuserbundle / resources / config / validation.xml
创建自己的文件