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

Правильно ли я делаю запрос в yii1?

Добрый день. Есть задача в yii1 сравнить данные до и перед записью в базу и отправить письмо на почту с указанием различий.
Как делаю сейчас, я получаю определленный массив в контроллере до записив базу $arr1=$model->attributes['feature'] , , после записи $model->save() я получаю второй массив $arr2=$model->attributes['feature'] он уже обновленный, в представлении сраниваю(может сравнивать тоже нужно в контроллере?) и отправляю по почте.
Вот код контроллера
$model = $this->loadModel($id);

        $arr1=$model->attributes['feature'];
        if (isset($_POST['SedUnit'])) {

        $model->attributes = $_POST['SedUnit'];

        if ($model->save()) {

        $arr2=$model->attributes['feature'];   

        $subj="Пользователь ".Yii::app()->user->name." внес изменения в оборудование ";

        $body = ['arr1' => $arr1,'arr2' =>$arr2];

        $sendOK=$this->sendMessage($subj, $body);  
 
         Yii::app()->user->setFlash('success', "Информация сохранена.");
                    
            } else {
         Yii::app()->user->setFlash('error', "Не удалось сохранить.");
            }
        }

        $this->render($view, [
            'model' => $model,
            'form' => new CForm($model->formConfig, $model),
        ]);

Правильно ли я делаю, или это нужно все проверять в модели через beforeSave и afterSave и уже потом задействовать контроллер для сравнения и отправки?
  • Вопрос задан
  • 55 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
22 дек. 2024, в 10:44
15000 руб./за проект
22 дек. 2024, в 10:12
10000 руб./за проект
22 дек. 2024, в 09:51
3000 руб./за проект