Symfony 扩展FOSUserBundle密码验证以要求特殊字符
我用的是FOSUserBundle。 我用附加的类变量实现了自己的用户实体。注册、登录和丢失的密码正常工作。:-) 我需要为密码验证添加额外的要求。 我在报纸上找到了一篇Symfony的文章。 本文介绍如何创建验证方法,并在validation.xml文件中使用回调约束引用它。 我已经实现了回调并更改了validation.xml,注册时一切正常 我还没有弄明白的是,如何通过丢失密码链接或更改密码页面使其用于密码更改 非常欢迎提供建议和文档指南Symfony 扩展FOSUserBundle密码验证以要求特殊字符,symfony,fosuserbundle,Symfony,Fosuserbundle,我用的是FOSUserBundle。 我用附加的类变量实现了自己的用户实体。注册、登录和丢失的密码正常工作。:-) 我需要为密码验证添加额外的要求。 我在报纸上找到了一篇Symfony的文章。 本文介绍如何创建验证方法,并在validation.xml文件中使用回调约束引用它。 我已经实现了回调并更改了validation.xml,注册时一切正常 我还没有弄明白的是,如何通过丢失密码链接或更改密码页面使其用于密码更改 非常欢迎提供建议和文档指南 提前谢谢。好的。我需要做的是为我的用户包创建一个v
提前谢谢。好的。我需要做的是为我的用户包创建一个validate.xml文件,并使用与FOSUserBundle不同的组名。 还需要更新config.yml以指定我的组。 具体来说,我修改了config.yml:
fos_user:
...
change_password:
form:
validation_groups: [myChangePassword]
在src/myProject/UserBundle/Resources/config/validation.xml中:
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping
http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
<!--
! Password constraints:
!-->
<class name="FOS\UserBundle\Form\Model\ChangePassword">
<property name="new">
<constraint name="Regex">
<option name="pattern">/[0-9!@#$%^*_-]+/</option>
<option name="message">Must include at least one digit or !,@,#,$,%,^,*</option>
<option name="groups">
<value>myChangePassword</value>
</option>
</constraint>
<constraint name="Length">
<option name="min">8</option>
<option name="max">254</option>
<option name="minMessage">Must be at least eight characters</option>
<option name="maxMessage">Too long</option>
<option name="groups">
<value>myChangePassword</value>
</option>
</constraint>
</property>
</class>
</constraint-mapping>
/[0-9!@#$%^*_-]+/
必须至少包含一位数字或!、@、#、$、%、^*
myChangePassword
8.
254
必须至少包含八个字符
太久
myChangePassword
希望这能为其他人节省一些时间。您应该粘贴代码,人们会更好地帮助您。非常感谢。