我正在尝试禁用更新规则模型上的字段,但出现错误。
我试试:
array('date', 'constraint', 'readOnly'=>true, 'on'=>'update'),
但我有这个错误:
“include(constraint.php):无法打开流:没有这样的文件或目录”
我可以使用 htmloptions 从视图中禁用,但我需要从模型中执行此操作,因为在更新时我需要禁用超过 5 个字段。
我怎么能这样做?
提前谢谢
我正在尝试禁用更新规则模型上的字段,但出现错误。
我试试:
array('date', 'constraint', 'readOnly'=>true, 'on'=>'update'),
但我有这个错误:
“include(constraint.php):无法打开流:没有这样的文件或目录”
我可以使用 htmloptions 从视图中禁用,但我需要从模型中执行此操作,因为在更新时我需要禁用超过 5 个字段。
我怎么能这样做?
提前谢谢
您正在使用不存在的验证器声明规则,因此出现错误是正常的:
array('date', 'constraint', 'readOnly'=>true, 'on'=>'update'),
此行执行以下操作:将验证器应用于场景constraint
上的date
字段,参数设置为。update
readOnly
true
验证器constraint
不存在在 Yii 中有一个内置的功能,所以如果你没有创建它,那么它就不存在!
文档:
编辑:在您的表格中,您可以执行以下操作:
<?php
echo $form->textField(
$model,
'email',
array('readonly'=>($model->scenario == 'update')? true : false)
);
?>
如您所见,只读值将取决于场景。