aguila/enum-field-aguila
最新稳定版本:v1.0.0
Composer 安装命令:
composer require aguila/enum-field-aguila
包简介
A Laravel Nova field.
README 文档
README
Nova field for enum in PHP 8.1 and above
Installation
You can install this package in a Laravel app that uses Nova via composer:
composer require Aguila/enum-field
Setup
use App\Enums\UserType; use Illuminate\Database\Eloquent\Model; class Example extends Model { protected $casts = [ 'user_type' => UserType::class, ]; }
Usage
You can use the Enum field in your Nova resource like this:
namespace App\Nova; use App\Enums\UserType; use Aguila\EnumField\Enum; class Example extends Resource { // ... public function fields(Request $request) { return [ // ... Enum::make('User Type')->attach(UserType::class), // ... ]; } }
Filters
If you would like to use the provided Nova Select filter (which is compatible with both the Enum and FlaggedEnum fields), you can include it like this:
namespace App\Nova; use App\Enums\UserPermissions; use App\Enums\UserType; use Aguila\EnumField\EnumFilter; class Example extends Resource { // ... public function filters(Request $request) { return [ EnumFilter::make(__('User Type'), 'user_type', UserType::class), // With optional default value: EnumFilter::make(__('User Type'), 'user_type', UserType::class, UserType::Administrator), ]; } }
Alternatively, you may wish to use the provided Nova Boolean filter (which is also compatible with both the Enum and FlaggedEnum fields):
namespace App\Nova; use App\Enums\UserPermissions; use App\Enums\UserType; use Aguila\EnumField\EnumBooleanFilter; class Example extends Resource { // ... public function filters(Request $request) { return [ EnumBooleanFilter::make(__('User Type'), 'user_type', UserType::class), // With optional default values: EnumBooleanFilter::make(__('User Type'), 'user_type', UserType::class, [ UserType::Administrator, UserType::Moderator, ]), ]; } }
Credits
Thanks
License
The MIT License (MIT). Please see License File for more information.
统计信息
- 总下载量: 5
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-03-20