php - Symfony Form Framework - 实现更改密码功能的最佳方法?

标签 php forms frameworks symfony1

我正在尝试了解 Symfony 1.4 中的表单框架。我读过令人难以置信的detailed section在“More with symfony”一书中,但我仍然不确定如何实现简单的“更改密码”功能。

要求非常基本,

  1. 将有两个字段:new_passwordconfirm_new_password。两者都将是输入字段。
  2. new_password 字段将被验证为包含字母和数字的 6 到 30 个字符之间的字符串。
  3. 将验证 confirm_new_password 字段是否与 new_password 字段完全匹配。

现在,我通过以下方式实现了这一点,

  • 向我的表单添加 2 个新字段。
  • new_password 字段添加字符串验证器以检查字符串长度。
  • confirm_new_password 字段添加字符串验证器,以确保其已填写。
  • 然后验证新密码是否有效并与自定义帖子验证器中的确认密码匹配。我这样做是因为我不想在 new_password 字段有效之前验证 confirm_new_password 字段。

现在进入我的问题。读完上面提到的文章后,我开始认为我应该将这两个字段包含在单个小部件或子表单中,因为它们严重依赖彼此,而一个字段如果没有另一个字段就毫无用处。

我想知道人们对此有何想法,如果有人实现了,他们是如何做到的?

谢谢

注意:没有 current_password 字段,因为这是我的管理区域。

最佳答案

您可以使用sfDoctrineGuardPlugin .

该插件为您的网站用户管理提供方便的表单、模型和 Controller 。

你可以扩展这个插件,定制以满足你的需求,这是一个非常常用的插件(最常用的)。

关于php - Symfony Form Framework - 实现更改密码功能的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2165188/

相关文章:

javascript - 带有自定义库的 querySelectorAll

.net - 单元测试框架 - 主要功能是什么

php - 发生错误时,laravel 不会回滚(删除插入的记录)

php - 如何使用 Javascript 或 PHP 存储 Accordion 菜单的状态(打开或关闭)

PHP 在 Windows 上发送邮件导致发送电子邮件后为 'hang'

javascript - 自动向用户输入添加负号(PLUNKER ATTACHED)

objective-c - CoreText 框架 - 应用程序无法在模拟器中运行 - iOS

php - 如何从 MYSQL 查询顺序插入数组?

javascript - Jquery.Validate 表单顶部的错误消息

php - 多张图片上传只在 Symfony 3 中上传一张图片?