1

想问一下是否有一种方法可以将模型中的多个规则分组为 1,以便我可以减少代码量,特别是在需要检查多个规则的相同属性的地方......以下是规则的方式现在声明...

            array (
                    'new_email_addr',
                    'email',
                    'on' => 'chngEmail'
            ),
            array (
                    'new_email_addr',
                    'required',
                    'on' => 'chngEmail'
            ),
            array (
                    'new_email_addr',
                    'sameEmail',
                    'on' => 'chngEmail'
            ),

如您所见,属性new_email_addr需要在保存之前检查 3 条规则......我想要实现的是这样的,所以我可以在一个部分中完成所有事情。

            array (
                    'new_email_addr',
                    'required, email, sameEmail',
                    'on' => 'chngEmail'
            ),

有这样的可能吗?

4

1 回答 1

1

不,那是不可能的。您可以将多个字段、场景和异常组合在一起,但不能将多个验证器组合在一起(有关示例,请参阅明确指南)。

唯一的出路是按照 Samuel 的建议创建您的自定义验证器,并结合所需的验证器。

于 2014-09-23T07:00:06.727 回答