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

Есть таблица questions в которую попадают вопросы от пользователей. По умолчанию status = Без ответа. Так вот, когда админ добавляет ответ на вопрос ( столбец body ), status должен сам меняться на опубликован.
Laravel только не давно начал изучать, всем спасибо за советы.
Пример таблицы prntscr.com/jmhhe1
  • Вопрос задан
  • 95 просмотров
Решения вопроса 1
@vanillathunder
Создаёте наблюдатель
class UserObserver
{
  /**
   * Прослушивание события обновление вопроса
   *
   * @param  Question $question
   * @return void
   */
  public function updating(Question $question)
  {
       if ($question->body != $question->getOriginal('body ')) {
           $question->status = 'опубликован';
        }
  }
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@PashaNedved
Для модели добавьте метод answer(), который будет вызывать update() или save()
public function answer(string $body)
{
return $this->update(['body' => $body, 'status' => 'Опубликован']);
}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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