События из контроллера в модели

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
artcifra
Сообщения: 10
Зарегистрирован: 2011.02.26, 12:37

События из контроллера в модели

Сообщение artcifra »

Можно ли так делать и вообще правильно ли это?

Хочу в модели при сохранении записи делать общую обработку в зависимости от того создается или обновляется запись.

Очень простой пример
К примеру дата создания записи (вариант для примера, знаю что можно это в структуре таблицы просто прописать)

Если запись новая то нужно туда записать текущее время, если обновляется то поле не трогать.
Можно это сделать в контроллере, но тогда если я тикие записи буду обновлять из админки и из публички, то мне прейдется делать два раза один и тот же код в друх разных методах в контроллере.
Можно ли это описать в модели?
Что если идет создание записи всегда делать такие то действия
Если редактирование то такие то
Как это реализовать?

Спасибо.
Nafania
Сообщения: 1227
Зарегистрирован: 2011.01.31, 13:12

Re: События из контроллера в модели

Сообщение Nafania »

Ну так и делается обычно в модели.
методы afterSave, beforeSave etc
artcifra
Сообщения: 10
Зарегистрирован: 2011.02.26, 12:37

Re: События из контроллера в модели

Сообщение artcifra »

Я их нашел, но как им передать, к примеру в beforeSave, что сейчас идет редактирование или создание записи?
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: События из контроллера в модели

Сообщение slavcodev »

artcifra писал(а):Я их нашел, но как им передать, к примеру в beforeSave, что сейчас идет редактирование или создание записи?
CActiveRecord::scenario !!!
Жду Yii 3!
artcifra
Сообщения: 10
Зарегистрирован: 2011.02.26, 12:37

Re: События из контроллера в модели

Сообщение artcifra »

круто!
а как пользоватся этом свойством?
Ответить