Поля

Slug

Основы

Наследует Text.

* имеет те же возможности

Поле зависит от модели Eloquent

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

use MoonShine\Laravel\Fields\Slug;
 
Slug::make('Slug')

slug slug_dark

Генерация slug

Через метод from() можно указать на основе какого поля модели генерировать slug, при отсутствии значения.

from(string $from)
Slug::make('Slug')
->from('title')

Разделитель

По умолчанию в качестве разделителя слов при генерации slug используется - , метод separator() позволяет изменить это значение.

separator(string $separator)
Slug::make('Slug')
->separator('_')

Локаль

По умолчанию при генерации slug учитывается заданная локаль приложения. Метод locale() позволяет изменить данное поведения для поля.

locale(string $local)
Slug::make('Slug')
->locale('ru')

Уникальные значения

Если необходимо сохранять только уникальные slug, то необходимо воспользоваться методом unique().

unique()
Slug::make('Slug')
->unique()

Динамический slug

Метод live() позволяет создать динамическое поле, которое будет отслеживать изменения в исходном поле.

Text::make('Title')
->reactive(),
Slug::make('Slug')
->from('title')
->live()

Динамичность основана на реактивности полей.