novius / laravel-nova-publishable
用于发布字段的开源Laravel Nova包
3.0.0
2024-07-10 14:01 UTC
Requires
- php: >=8.2
- illuminate/support: ^10.0|^11.0
- laravel/nova: ^4.0
- novius/laravel-publishable: ^3.0.0
Requires (Dev)
- laravel/pint: ^1.10
README
简介
此包允许您在 Laravel Nova 中管理使用 Laravel Publishable 的 Laravel 模型。
要求
- Laravel Nova >= 4.0
- Laravel >= 10.0
- PHP >= 8.2
注意:以下说明适用于 Laravel >= 10.0 和 PHP >= 8.2。如果您使用的是旧版本,请参阅 旧版本的文档。
安装
您可以通过 composer 安装此包
composer require novius/laravel-nova-publishable
在您的 Nova 资源上添加 Publishable
特性
use Laravel\Nova\Resource; use Novius\LaravelNovaPublishable\Nova\Traits\Publishable; class Post extends Resource { use Publishable;
然后您可以在您的 Nova 资源中插入 Publishable 字段。您还可以添加发布状态过滤器。
class Post extends Resource { public function fields(NovaRequest $request): array { return [ PublicationBadge::make(), // Only display on not forms PublicationStatusField::make()->onlyOnForms(), PublishedFirstAt::make()->hideFromIndex(), PublishedAt::make()->onlyOnForms(), ExpiredAt::make()->onlyOnForms(), ]; } public function filters(NovaRequest $request): array { return [ new PublicationStatus(), ]; }
您可以使用 UpdatePublicationStatus
动作批量更新模型的状态。
public function actions(Request $request): array { return [ UpdatePublicationStatus::make(), ]; }
语言文件
如果您想自定义语言文件,您可以使用以下命令发布它们
php artisan vendor:publish --provider="Novius\LaravelNovaPublishable\LaravelNovaPublishableServiceProvider" --tag="lang"
代码检查
使用 Laravel Pint 检查您的代码
composer run-script lint
许可证
此包受 GNU Affero General Public License v3 或(根据您的选择)任何后续版本的许可。