Задать вопрос
@BloodVIRUS

Как правильно работать с beforeValidate и isNewRecord в yii2?

Здравствуйте. Раз за разом я натыкаюсь на одну и ту же проблему.
Для новых записей в бд мне нужно заполнять какие-то поля, например дата обновления. Для достижения цели я использую public function beforeValidate() и if ($this->isNewRecord), которое должно буквально сработать "выполнить перед валидацией" и "если запись новая". Но по факту $this->dtUpdate=time(); выполняется всегда. Не важно, новая ли запись или нет..
Если например буду выводить данные в GridView, с возможностью фильтрации, то поле dtUpdate для фильтров там будет заполнено всегда текущей датой..
  • Вопрос задан
  • 239 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
kawabanga
@kawabanga
public function beforeSave($insert)
    {
         if ($insert){ ваш код }
        return parent::beforeSave($insert); // TODO: Change the autogenerated stub
    }


Но лучше на Behaviours эти поведения перевести.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы