leandro-grg / list-maker
基于模板和数据库的列表生成器
This package is auto-updated.
Last update: 2024-09-19 10:25:24 UTC
README
安装
使用Composer安装包
composer require leandro-grg/list-maker
发布供应商资源
php artisan vendor:publish --provider='LeandroGRG\ListMaker\Providers\ListMakerServiceProvider'
将提供者添加到您的应用程序提供者中
return [ //... 'providers' => [ //... LeandroGRG\ListMaker\Providers\ListMakerServiceProvider::class ] //... ];
运行包迁移
php artisan migrate
(可选) 别名
您可以通过将以下代码片段添加到您的config/app.php文件中来为类设置别名
return [ //... 'aliases' => [ //... 'ListMaker' => LeandroGRG\ListMaker\ListGen::class //... ] //... ];
用法
要使用列表生成器,您只需在您的视图中编写以下内容
{{ ListMaker::make('list-name') }}
此外,您还可以使用包的定制blade指令
@list('list-name')
如果您想在.blade.php文件中使用它,您可以使用纯PHP
<?php LeandroGRG\ListMaker\ListGen::make('list-name') ?>
创建列表
为了创建列表,只需执行命令php artisan list:create-list,然后按照交互式CLI工具中的步骤操作。这将在lists表中创建一个条目,以及所需的文件夹:app/Helpers/ListTemplates目录。
创建条目
运行命令php artisan list:create-list-item。该命令将提示您为主列表添加新条目。选择列表后,它将提示您输入创建条目所需的全部属性
- 类型
stringrequired:条目类型(item或divider) - 路由
stringnullable:条目路由。 - 图标
stringnullable:条目图标 - 显示
stringrequired:条目显示文本 - 顺序
integerrequired:条目顺序
模板
所有模板都位于app/Helpers/ListTemplates目录中。对于每个列表,在app/Helpers/ListTemplates/{StudlyCaseListName}中创建一个目录。
列表
在app/Helpers/ListTemplates/{StudlyCaseListName}目录中,您将找到与列表相关的两个文件
-
解析器 这是一个名为
{StudlyCaseListName}Parser.php的生成类,只有一个方法,即parse方法。它接收$list (Illuminate\Database\Eloquent\Model)参数,用于在模板中替换字符串。parse方法返回一个数组,用于在strtrphp函数中使用。 -
模板 在文件夹中,您可以找到一个名为
ListTemplate.html的文件。这是列表模板,您可以像您喜欢的那样修改它。
列表条目
基本上,它像列表解析器一样工作,但有一点区别
- 解析器 在这种情况下,解析器将为每种类型的条目有一个方法,遵循模式
parse{Type}Type。例如,这将是一个分隔符类型条目的方法
static function parseDividerType ($item) { return []; }
- 模板 您可以在list文件夹中找到每种类型条目的模板,遵循以下名称模式
{ItemType}Template.html。
添加自定义条目类型
我们正在努力。目前,您可以使用item和divider条目类型。