0

我的代码中没有应用函数规则,我在 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',
        ];
    }

}
4

1 回答 1

0

您的问题不是您的验证不起作用,而是服务器接收到的数据不正确。它将没有正确的名称来使 Yii 能够将模型属性与所需的规则相匹配。您的表单应该看起来像这样;

$form = ActiveForm::begin();
echo $form->field($model, 'name')->textInput();
$form = ActiveForm::end();

你的类$model的一个实例在哪里。Year

这将使用 Yii 生成所有匹配的字段名称,然后将能够将验证规则与属性匹配。你会发现你的字段的名字类似于Year['name'],Yii 可以找到该属性的验证规则。

于 2017-04-21T16:05:19.673 回答