nibri10 / nova-grid
添加列以创建和更新资源
1.0.5
2021-07-15 03:08 UTC
Requires
- php: >=7.1.0
Requires (Dev)
- nibri10/nova-grid: dev-master
README
基于作者弃用的此包 https://packagist.org.cn/packages/jobcerto/nova-grid
Laravel Nova 的网格布局工具
这是一个 Laravel Nova 管理面板的工具,允许您为资源创建基于网格的布局。
安装
您可以通过 composer 安装此包
composer require nibri10/nova-grid
然后,您需要在 NovaServiceProvider.php
中注册此工具
use Nibri10\NovaGrid\NovaGrid; ... /** * Get the tools that should be listed in the Nova sidebar. * * @return array */ public function tools() { return [ // other tools new NovaGrid, ]; }
使用此工具
- 设置工具后,您现在所有字段都可以访问 meta 属性
size
,其值是 tailwind 类的尺寸之一。
示例
public function fields(Request $request) { return [ ID::make()->sortable(), Text::make('Name') ->size('w-1/3'), Select::make('Type') ->size('w-1/3') ->options(UserType::toSelectArray()), Text::make('Email') ->size('w-1/3') ->sortable() ->rules('required', 'email', 'max:254') ->creationRules('unique:users,email') ->updateRules('unique:users,email,{{resourceId}}', 'sometimes'), Password::make('Password') ->size('w-1/3') ->onlyOnForms() ->creationRules('required', 'string', 'min:6') ->updateRules('nullable', 'string', 'min:6', 'sometimes'), InlineSelect::make('Status') ->size('w-1/3') ->options(Setting::userStatuses()) ->inlineOnIndex() ->fillUsing(function ($request, $model) { $model->applyStatus($request->status); }), BelongsTo::make('Office') ->size('w-1/2') ->nullable(), ]; }