在CakePHP中的自定义验证 [英] Custom filed validation in CakePHP

查看:137
本文介绍了在CakePHP中的自定义验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要帮助如何为下一种情况开发验证规则...

i need help how to develop validation rule for next case...

我的cakephp网络表单包含几个动态生成的复选框。最终用户必须至少选择其中一个。

my cakephp web form contains several dynamically generated checkboxes. end user must select at least one of them.

这些复选框都不是数据库表中的字段。

none of those checkboxes are fields in db table.

你可以帮我如何创建验证规则吗?

can you help me how to create validation rule for that?

尝试添加模型,如

var $validate = array(
    'topic' => array(
      'rule' => 'myRule',
      'message' => 'Check on at least one checkbox'
    )
)

function myRule() {
  //just give me false to know it works...
  return false;
}

也就是这种情况下,如何放置错误消息,

also, for that case, how to place error message, below those checkboxes?

tnx in adv!

tnx in adv!

推荐答案

使用CakePHP中的自定义验证规则,如果你正在调用函数而不是RegEx,它必须是关联数组中的第一个参数,所以它看起来像这样。

With Custom Validation rules in CakePHP, if you are calling a function instead of a RegEx it must be the first parameter in an associative array, so it would look something like this instead.

var $validate = array(
    'topic' => array(
      'rule' => array('myRule'),
      'message' => 'Check on at least one checkbox'
    )
)

function myRule() {
  //just give me false to know it works...
  return false;
}

另外,如果你想包含函数参数,你可以把它们作为额外的参数规则数组。

Additionally if you wanted to include function arguments you would put them as extra parameters in the rule array.

var $validate = array(
    'topic' => array(
      'rule' => array('myRule', 10),
      'message' => 'Check on at least one checkbox'
    )
)

function myRule($id) {
if (array_shift($id) = 10) {
    return false;
    }
}

http://book.cakephp.org/view/152/Adding-your-own-Validation-Methods

这篇关于在CakePHP中的自定义验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆