我是Yii的新人,我尝试过Crud和成功。现在尝试创建验证,但仍然是错误。
这是我的脚本 的型号:Buku.php
public function rules()
{
return array(
array('judul, penulis'),
array('judul', 'length','max'=>50),
array('penulis', 'length', 'max'=>50),
array('judul,penulis', 'on'=>'search'),
);
}
控制器:BukuController.php
public function actionCreate()
{
$model = new Buku;
if(isset($_POST['Buku']))
{
$model->judul =$_POST['Buku']['judul'];
$model->penulis =$_POST['Buku']['penulis'];
$model->save();
/*if($model->save())
{
Yii::app()->user->setFlash('Succes', "Data berhasil Disimpan");
$this->redirect(array('index'));
}*///end of
}//end if isset
$this->render('create',array('model'=>$model));
}//end of class
查看:create.php
<div class="form">
<h2>Add Data</h2>
<?php echo CHtml::beginForm(array('buku/create'));?>
<?php
echo CHtml::errorSummary($model);
?>
<div class="row">
<?php echo CHtml::activeLabel($model,'judul');?>
<?php echo CHtml::activeTextField($model,'judul','');?>
<?php echo CHtml::errorSummary($model,'judul');?>
</div>
<div class="row">
<?php echo CHtml::activeLabel($model,'penulis');?>
<?php echo CHtml::activeTextField($model,'penulis','');?>
<?php echo CHtml::errorSummary($model,'penulis');?>
</div>
<div class="row buttons">
<?php echo CHtml::submitButton('Submit');?>
<?php echo CHtml::endForm();?>
</div>
</div>
错误消息是
Buku has an invalid validation rule. The rule must specify attributes to be validated and the validator name
任何人都可以帮忙吗? 我非常感谢你的回答。 感谢
答案 0 :(得分:0)
请求编辑第一行,可能你想要'必需'
array('judul, penulis','required'),
这不是必需的:
$model->judul =$_POST['Buku']['judul'];
$model->penulis =$_POST['Buku']['penulis'];
您可以使用质量分配:http://www.yiiframework.com/wiki/161/understanding-safe-validation-rules/
$model->attributes=$_POST['Buku'];
答案 1 :(得分:0)
在您的Model类方法规则中,第一条规则无效:
array('judul, penulis')
- &gt;没有指定验证规则。
至少尝试:
array('judul, penulis', 'required')
Yii中所有验证规则的列表: http://www.yiiframework.com/wiki/56/
答案 2 :(得分:-2)
验证的工作原理 验证器的参数 验证者的选择 方案 验证规则参考
布尔值:CBooleanValidator
captcha:CCaptchaValidator
比较:CCompareValidator
日期:CDateValidator
默认值:CDefaultValueValidator
电子邮件:CEmailValidator
存在:CExistValidator
file:CFileValidator
filter:CFilterValidator
in:CRangeValidator
长度:CStringValidator
数字:CNumberValidator
匹配:CRegularExpressionValidator
必需:CRequiredValidator
安全:CSafeValidator
键入:CTypeValidator
unique:CUniqueValidator
不安全:CUnsafeValidator
url:CUrlValidator
选定的读数 在Yii中内置验证器......