novius / laravel-nova-news
Laravel Nova新闻和博客文章管理包
2.1.2
2024-09-05 12:15 UTC
Requires
- php: ^8.2
- illuminate/support: ^10.0|^11.0
- laravel/nova: ^4.0
- novius/laravel-linkable: ^1.0
- novius/laravel-meta: ^1.0
- novius/laravel-nova-field-preview: ^2.0
- novius/laravel-nova-publishable: ^3.0
- novius/laravel-nova-translatable: ^1.0
- spatie/laravel-sluggable: ^3.4
- waynestate/nova-ckeditor4-field: ^1.1
Requires (Dev)
- laravel/pint: ^1.13
- orchestra/testbench: ^v9.2.0
- pestphp/pest: ^2.34
README
Laravel Nova新闻
介绍
此Laravel Nova包允许您在Laravel Nova管理面板中管理新闻帖子。
您将能够创建帖子、类别和标签。
您可以为帖子附加多个类别和标签。类别可以视为列表页面。
要求
- PHP >= 8.2
- Laravel Nova >= 4.0
- Laravel >= 10.0
注意:以下说明适用于Laravel >= 10.0和PHP >= 8.2。如果您使用的是早期版本,请参阅旧版本的文档。
安装
您可以通过composer安装此包
composer require novius/laravel-nova-news
在NovaServiceProvider
的tools
方法中注册工具
// app/Providers/NovaServiceProvider.php public function tools() { return [ // ... new \Novius\LaravelNovaNews\LaravelNovaNews(), ]; }
使用以下命令运行迁移
php artisan migrate
配置
您可以使用以下命令可选地发布配置文件
php artisan vendor:publish --provider="Novius\LaravelNovaNews\LaravelNovaNewsServiceProvider" --tag="config"
这允许您定义路由名称和
这允许您
- 定义路由名称及其参数
- 覆盖资源或模型类
- 定义使用的语言
// config/laravel-nova-news.php return [ // ... 'resources' => [ 'post' => \App\Nova\Post::class, ], ];
// app/Nova/Post.php namespace App\Nova; use Laravel\Nova\Fields\Text; class Post extends \Novius\LaravelNovaNews\Nova\NewsPost { public function mainFields(): array { return [ ...parent::mainFields(), Text::make('Subtitle'), ]; } }
前端内容
如果您想要预先生成的控制器和路由,可以运行以下命令
php artisan news-manager:publish-front {--without-categories} {--without-tags}
此命令将路由附加到routes/web.php
并创建一个新的App\Http\Controllers\FrontNewsController
。
然后您可以自定义您的路由和控制器。
在由控制器调用的视图中,使用laravel-meta的文档来实现元标签
资源
接下来,我们需要发布Laravel Nova Translatable包的资源。我们通过运行以下命令来完成此操作
php artisan vendor:publish --provider="Novius\LaravelNovaTranslatable\LaravelNovaTranslatableServiceProvider" --tag="public"
迁移和语言文件
如果您想自定义迁移或语言文件,可以使用以下命令发布它们
php artisan vendor:publish --provider="Novius\LaravelNovaNews\LaravelNovaNewsServiceProvider" --tag="migrations"
php artisan vendor:publish --provider="Novius\LaravelNovaNews\LaravelNovaNewsServiceProvider" --tag="lang"
测试
使用以下命令运行测试
composer test
代码检查
使用Laravel Pint进行代码检查
composer lint
许可证
此包受GNU Affero General Public License v3或(根据您的选择)任何后续版本的许可。