【发布时间】:2013-01-23 09:13:31
【问题描述】:
我创建了一个包含一些实体(比如姓名、地址等)的表单。我已经在模型类中定义了验证规则。客户端验证按要求完美运行。现在我需要创建自定义验证规则。为此,参考 http://www.yiiframework.com/wiki/168/create-your-own-validation-rule/#hh0 ,我在我的模型中创建了一个名为 valid_number() 的方法,并定义了一个简单的空值检查(我知道有用于验证空值、电子邮件、密码等的内置规则。在这里我已经演示了一种简单的验证方法,实际上我正计划进行一些自定义验证)。请参考下面的代码。请让我知道我做错了什么。
//模型
class Employee extends CActiveRecord{
public $number;
public function rules(){
return array(
array('number','valid_number'),
);
}
public function valid_number($attribute,$params){
if($this->$attribute == '' ){
CModel::addError($attribute, 'Number is null');
}
}
//查看
</fieldset>
<?php echo $form->textFieldRow($model, 'number'); ?>
</fieldset>
【问题讨论】:
-
错误是什么?模型验证没有任何错误,发生了 php 错误?
-
那么到底发生了什么?你的方法被调用了吗?
var_dump($this->$attribute)输出什么?
标签: php yii validation