1

它没有工作

array('fio', 'length', 'min'=>5, 'max'=>30, 'message' => 'custom'),

但这项工作

array('fio, login, password', 'required', 'message' => '{attribute} custom'),
4

2 回答 2

1

对于CStringValidator,还有另一个属性称为is指定字符串的确切长度,并且该message属性仅在is输入不满足该属性时使用。

看看源代码,这将变得清晰:

if($this->is!==null && $length!==$this->is)
{
    $message=$this->message!==null?$this->message:Yii::t('yii','{attribute} is of the wrong length (should be {length} characters).');
    $this->addError($object,$attribute,$message,array('{length}'=>$this->is));
}
于 2012-11-06T19:57:56.877 回答
0

对于这种类型的验证器:

除了用于设置自定义错误消息的 {@link message} 属性之外,* CStringValidator 还有一些您可以设置的自定义错误消息,它们对应于不同的 * 验证场景。要在字符串太短时定义自定义消息, * 您可以使用 {@link tooShort} 属性。与 {@link tooLong} 类似。消息可能包含 * 占位符,这些占位符将替换为实际内容。除了被所有验证器识别的“{attribute}” * 占位符(参见 {@link CValidator}),CStringValidator 还允许指定以下 * 占位符:

于 2012-11-06T19:43:42.367 回答