- Создание
- Значение по умолчанию
- Только для чтения
- Placeholder
- Атрибуты
- Звезды
- Кнопки +/-
- Редактирование в предпросмотре
Расширяет Text
- имеет те же функции
Создание
Поле Number является расширением Text, которое по умолчанию устанавливает type=number
и имеет дополнительные методы.
use MoonShine\Fields\Number; //... public function fields(): array{ return [ Number::make('Sort') ];} //...
Значение по умолчанию
Вы можете использовать метод default()
, если вам нужно указать значение по умолчанию для поля.
default(mixed $default)
use MoonShine\Fields\Number; //... public function fields(): array{ return [ Number::make('Title') ->default(2) ];} //...
Только для чтения
Если поле предназначено только для чтения, то вы должны использовать метод readonly()
.
readonly(Closure|bool|null $condition = null)
use MoonShine\Fields\Number; //... public function fields(): array{ return [ Number::make('Title') ->readonly() ];} //...
Placeholder
Метод placeholder()
позволяет установить атрибут placeholder для поля.
placeholder(string $value)
use MoonShine\Fields\Number; //... public function fields(): array{ return [ Number::make('Rating', 'rating') ->nullable() ->placeholder('Рейтинг продукта') ];} //...
Атрибуты
Поле Number имеет дополнительные атрибуты, которые можно установить через соответствующие методы.
Методы min()
и max()
используются для установки минимального и максимального значений поля.
min(int|float $min)
max(int|float $max)
Метод step()
используется для указания шага значения для поля.
step(int|float $step)
use MoonShine\Fields\Number; //...public function fields(): array{ return [ Number::make('Price') ->min(0) ->max(100000) ->step(5) ];} //...
Звезды
Метод stars()
используется для отображения числового значения при предпросмотре в виде звезд (например, для рейтингов).
stars()
use MoonShine\Fields\Number; //... public function fields(): array{ return [ Number::make('Rating') ->stars() ->min(1) ->max(10) ];} //...
Кнопки +/-
Метод buttons()
позволяет добавить к полю кнопки для увеличения или уменьшения значения.
buttons()
use MoonShine\Fields\Number; //... public function fields(): array{ return [ Number::make('Rating') ->buttons() ];} //...
Редактирование в предпросмотре
Метод updateOnPreview()
позволяет редактировать поле Number в режиме предпросмотра.
updateOnPreview(?Closure $url = null, ?ResourceContract $resource = null, mixed $condition = null)
$url
- URL для обработки асинхронного запроса,$resource
- ресурс модели, на который ссылается отношение,$condition
- условие выполнения метода.
Настройки не обязательны и должны быть переданы, если поле работает вне ресурса.
use MoonShine\Fields\Number; //... public function fields(): array{ return [ Number::make(Country) ->updateOnPreview() ];} //...