6

我有在 Zend Framework 2 中进行自定义验证的经验(目前使用版本 2.0.5)。我有兴趣在“编辑个人资料”表单中创建更改密码部分。我想要做的是有3个领域:

  • 当前密码,
  • 新密码,
  • 确认新密码。

然后我想验证如下:

  • 如果设置了新密码,则还必须设置当前密码(并进行身份验证),并确认新密码应与新密码匹配。
  • 如果设置了当前密码,还必须要求输入新密码和确认新密码。
  • 如果未设置,则允许编辑配置文件的其余部分,因此继续验证。

我认为您可以了解我所追求的要点,我正在寻找一种使用 Zend Framework 2 的可重用方法。理想情况下,创建一个自定义验证器以便可以重用表单,我怀疑是工厂方法可能更好。任何这样我就不必在控制器/服务层中检查它并在我想使用它的任何地方重复自己。

亲切的问候,

伊势

4

1 回答 1

-2

您可以添加自定义过滤器,但我认为这也可以使用验证组来完成,并单独验证输入组。

您可以将密码字段添加到单独的组中,并且仅在主密码不为空时才验证该组。

http://framework.zend.com/manual/2.0/en/modules/zend.input-filter.intro.html

http://framework.zend.com/manual/2.0/en/modules/zend.form.collections.html#validation-groups-for-fieldsets-and-collection

于 2013-01-25T10:22:18.950 回答