Laravel Voyager, обновление на 1 столе, обновление на другом - PullRequest
0 голосов
/ 21 сентября 2018
  • Язык: PHP
  • Каркас: Laravel
  • Зависимость / Библиотека: Laravel Voyager

У меня есть 3 таблицы базы данных: Пользователи , Расписание проверок и Назначения .

Пользователи могут зарезервировать много расписаний, а расписания могут быть зарезервированы многими пользователями, поэтому в основном Таблица встреч - это моя ассоциативная сущность для подключения пользователей и Расписание проверок таблиц

В моем установленном Laravel Voyager Встречи В таблице есть столбец статус , помеченный как Платный / Еще не оплачен

Теперь, всякий раз, когда администратор изменяет статус на Оплачено , я хочу, чтобы столбец Слоты из таблицы Расписание назначений был уменьшен или уменьшен на 1, чтобы буквально отметить, что пользователь успешно заплатил свой слот заграфик проверки

Могу ли я узнать, как и где я могу добавить такой кодпоэтому, когда Laravel Voyager обновляет таблицу Встречи , я также могу обновлять таблицу Расписаний Таблица?

Большое спасибо!

1 Ответ

0 голосов
/ 21 сентября 2018

Типичным способом достижения этого конкретного сценария является переопределение модели, вы можете реализовать логику в своей модели, которую я предполагаю App \ ScheduleAppointments:

    namespace App;

    use Illuminate\Database\Eloquent\Model; 

    class ScheduleAppointments extends Model 
    {
        //Your model logic
        //
        //
        //
        //

    /**
     * OVERRIDE Boot Method
     */
        protected static function boot()
        {
            parent::boot();
            static::updating(function ($appointment) {
            if($appointment->status == 'PAID'){
                 $appointment->slot -=1;
            }    
            });
        }

    }
...