函数规则没有在我的代码中应用,我在loginFrom模型中做了相同的代码,但它运行良好! 这是我的模特
<?php
namespace backend\models;
use Yii;
use yii\base\Model;
class Year extends \yii\db\ActiveRecord
{
public function rules()
{
return [
[['Current_Year', 'Date', 'Description'], 'required'],
];
}
public static function tableName()
{
return 'year';
}
public function attributeLabels()
{
return [
'YearId' => 'Year ID',
'Theme' => 'Theme',
'Current_Year' => 'Current Year',
'Date' => 'Date',
'Description' => 'Description',
];
}
}
答案 0 :(得分:0)
您的问题不是您的验证无效,而是服务器收到数据时不正确。它没有正确的名称,无法使Yii将模型属性与所需规则相匹配。您的表单应该看起来像这样;
$form = ActiveForm::begin();
echo $form->field($model, 'name')->textInput();
$form = ActiveForm::end();
其中$model
是您的Year
类的实例。
这将使用Yii生成字段的所有匹配名称,然后将验证规则与属性匹配。您会发现您的字段名称类似于Year['name']
,Yii可以找到该属性的验证规则。