sequelone / songs-crud
一款基于Laravel 5和Backpack\CRUD的音乐管理后台。
v1.0.0
2022-05-08 20:43 UTC
Requires
- backpack/crud: ^5.0
- cviebrock/eloquent-sluggable: ^9.0||^8.0||^7.0||^6.0||4.8
- owen-oj/laravel-getid3: ^2.0
- spatie/laravel-translatable: ^4.6
Requires (Dev)
- phpunit/phpunit: ^9.0||^7.0
- scrutinizer/ocular: ~1.1
- squizlabs/php_codesniffer: ~2.3 || ~3.0
README
本包为后台管理面板添加创建音乐门户的模块。应用范围非常广泛,从小型厂牌到发行商。
安装
由于SongsCRUD只是一个Backpack\CRUD的示例,您可以选择以下两种方式之一进行安装。
** 下载并将文件放置到您的应用程序中**(推荐;请记住还需要composer require cviebrock/eloquent-sluggable
)
- 在您的终端中运行
composer require sequelone/songs-crud
- 发布迁移
php artisan vendor:publish --provider="SequelONE\SongsCRUD\SongsCRUDServiceProvider"
- 运行迁移以获得所需的数据库表
php artisan migrate
- [可选] 在
resources/views/vendor/backpack/base/inc/sidebar.blade.php
或menu.blade.php
中添加一个菜单项
<!-- Songs --> <li class="nav-item nav-dropdown"> <a class="nav-link nav-dropdown-toggle" href="#"><i class="nav-icon la la-diamond"></i>{{ trans('songs-crud::songscrud.music') }}</a> <ul class="nav-dropdown-items"> <li class="nav-item"><a class="nav-link" href="{{ backpack_url('songs/releases') }}"><i class="nav-icon la la-microphone"></i> {{ trans('songs-crud::songscrud.releases') }}</a></li> <li class="nav-item"><a class="nav-link" href="{{ backpack_url('songs/labels') }}"><i class="nav-icon la la-star"></i> {{ trans('songs-crud::songscrud.labels') }}</a></li> <li class="nav-item"><a class="nav-link" href="{{ backpack_url('songs/artists') }}"><i class="nav-icon la la-users"></i> {{ trans('songs-crud::songscrud.artists') }}</a></li> <li class="nav-item"><a class="nav-link" href="{{ backpack_url('songs/types') }}"><i class="nav-icon la la-check-square-o"></i> {{ trans('songs-crud::songscrud.types') }}</a></li> <li class="nav-item"><a class="nav-link" href="{{ backpack_url('songs/genres') }}"><i class="nav-icon la la-list-ul"></i> {{ trans('songs-crud::songscrud.genres') }}</a></li> <li class="nav-item"><a class="nav-link" href="{{ backpack_url('songs') }}"><i class="nav-icon la la-music"></i> {{ trans('songs-crud::songscrud.tracks') }}</a></li> </ul> </li>
- [可选] 如果需要上传图片的浏览字段,请安装Laravel-Backpack/FileManager。
额外字段类型
短链
通过点击生成短链。您可以添加新的字段类型。
$this->crud->addField([
'name' => 'shortlink',
'label' => 'Shortlink (URL)',
'type' => 'shortlink',
'generate' => 'small_alphanumeric',
'length' => 4,
'hint' => 'Will be automatically generated from your name, if left empty.',
]);
length
参数负责生成的短链长度。
示例
'generate' => 'small_alphanumeric',
'length' => 4,
输出
d2f8
generate
参数的可用选项。
上传曲目
$this->crud->addField([
'name' => 'shortlink',
'label' => 'Shortlink (URL)',
'type' => 'shortlink',
'generate' => 'small_alphanumeric',
'length' => 4,
'hint' => 'Will be automatically generated from your name, if left empty.',
]);
在/config/filesystems.php
中添加
'uploads' => [
'driver' => 'local',
'root' => storage_path('uploads'), // that's where your backups are stored by default: storage/uploads
],
'tracks' => [
'driver' => 'local',
'root' => storage_path('uploads/tracks'), // that's where your backups are stored by default: storage/uploads
],
'covers' => [
'driver' => 'local',
'root' => storage_path('uploads/tracks/covers'), // that's where your backups are stored by default: storage/uploads
],
控制台
此命令使用默认发布格式更新数据库。如果您不想将数据插入到表中,可以使用此命令。
php artisan songscrud:types
执行此命令将加载所有流派。
php artisan songscrud:genres
警告!注意!ВНИМАНИЕ!
执行此命令将完全清除songs_types
和songs_genres
表。
php artisan songscrud:clear
变更日志
请参阅CHANGELOG了解最近更改的详细信息。
测试
$ composer test
覆盖功能
如果您需要修改在项目中的工作方式
- 创建一个
routes/backpack/songscrud.php
文件;包将看到它,并加载您的路由文件,而不是包中的路由文件; - 创建扩展包中存在的控制器/模型,并在新路由文件中使用它们;
- 修改任何您想要在新的控制器/模型中修改的内容;
贡献
请参阅CONTRIBUTING和CONDUCT以获取详细信息。
致谢
许可证
Backpack免费用于非商业用途,Backpack PRO 69€/项目用于商业用途。请参阅许可证文件和backpackforlaravel.com获取更多信息。