Как лучше всего организовать вывод ошибок валидации модели на форме?

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Закрыто
prot
Сообщения: 34
Зарегистрирован: 2013.12.26, 21:02
Контактная информация:

Как лучше всего организовать вывод ошибок валидации модели на форме?

Сообщение prot »

Всем привет.
Есть модель с определенными rules.

Код: Выделить всё

[['alias', 'name', 'created_at', 'updated_at'], 'required'],
При этом created_at и updated_at - не выводятся на форме.

Код: Выделить всё

    public function behaviors()
    {
        return [
            'timestamp' => [
                'class' => TimestampBehavior::className(),
                'attributes' => [
                    ActiveRecord::EVENT_BEFORE_INSERT => ['created_at', 'updated_at'],
                    ActiveRecord::EVENT_BEFORE_UPDATE => 'updated_at',
                ],
            ],
При попытке создать новую запись соответственно ничего не даст сохранить - потому что при валидации created_at, updated_at пустые.
На экране конечно же никаких сообщений об ошибках нет, потому что нет полей ActiveForm created_at, updated_at.

Код: Выделить всё

    public function actionCreate()
    {
        $model = new Category();

        if ($model->load(Yii::$app->request->post()) && $model->save()) {
            return $this->redirect(['view', 'id' => $model->id]);
        } else {
            return $this->render('create', [
                'model' => $model,
            ]);
        }
    }
Вопрос в следующем:
Как лучше всего организовать вывод подобных ошибок валидации модели на форме?
astronin
Сообщения: 606
Зарегистрирован: 2012.01.30, 17:46

Re: Как лучше всего организовать вывод ошибок валидации модели на форме?

Сообщение astronin »

убрать 'created_at', 'updated_at' из required, потому как они пишутся (если я не ошибаюсь) после валидации, поэтому у вас там и ошибка.
и вообще эти поля служебные и их не надо ни как валидировать, они не могут не писаться, если и не пишутся, значит какая-то проблема в коде.
prot
Сообщения: 34
Зарегистрирован: 2013.12.26, 21:02
Контактная информация:

Re: Как лучше всего организовать вывод ошибок валидации модели на форме?

Сообщение prot »

Полностью согласен. Я их убираю из required. И это я привёл как пример.
Но для других полей бывает что забываешь что то убрать из required, или там другое правило стоит, и потом ищешь что не так, потому что на экране никаких ошибок.
prot
Сообщения: 34
Зарегистрирован: 2013.12.26, 21:02
Контактная информация:

Re: Как лучше всего организовать вывод ошибок валидации модели на форме?

Сообщение prot »

Класс! Спасибо большое. То что надо. Не заметил этой функции.
Закрыто