Laravel Контроллер рюкзака - Не удается понять, как добавить логи c в сценарий при методе Create. - PullRequest
0 голосов
/ 15 января 2020

Я установил Laravel 6 с Backpack 4. Я создал форму с 3 полями:

  • Заголовок
  • Slug (установить как скрытое поле)
  • Содержимое

После сохранения данных я хотел бы взять заголовок и сохранить его в виде блока с помощью Laravel Helper:

use Illuminate\Support\Str;
$slug = Str::slug('Laravel 6 Framework', '-');

Я не могу понять, где я должен разместить этот код. В обычном Laravel приложении я поместил бы его в метод store (), сначала установил слаг как «nullable» в проверке, а затем применил вспомогательный метод перед сохранением слага в базу данных.

Но с Laravel рюкзаком, я потерялся .....

Есть идеи, пожалуйста?

Спасибо.

1 Ответ

0 голосов
/ 16 января 2020

В рюкзаке используются контроллер и модели, поэтому вы можете перезаписать метод хранения контроллера , если хотите.

Но для этого случая использования я рекомендую вам изменить Модель. Это потому, что ваша строка должна быть медленной независимо от того, откуда поступил запрос - форма интерфейса или форма панели администратора. Поэтому лучше иметь эту логику c в одном месте - модель, а не повторять ее в нескольких местах в вашем приложении. В Laravel вы можете легко сделать это, используя Mutator в вашей модели:

    public function setSlugAttribute($value)
    {
        $this->attributes['slug'] = \Str::slug($value, '-');
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...