gasparilab / actionablelist
为管理面板生成可操作列表。
0.1.5
2017-11-03 13:55 UTC
Requires
- php: ~7.1
- illuminate/support: ~5.1
Requires (Dev)
- phpunit/phpunit: ~5.7
- squizlabs/php_codesniffer: ^2.3
This package is not auto-updated.
Last update: 2024-09-22 08:52:55 UTC
README
这是一个为 Laravel 5.5 设计的包,允许您轻松创建物品表格,特别是用于管理面板。它需要 PHP 7.1。
请注意,此包处于开发阶段,目前还不稳定,不适用于生产。例如,新版本可能会引入破坏性更改。感谢。
安装
您可以通过 composer 轻松安装此包
composer require gasparilab/actionablelist
此包支持新的 Laravel 服务提供者自动发现,因此不需要手动将其放入 config/app.php 中的 providers 数组。
如果您想自定义表格的 HTML 代码(您可能会的!)
php artisan vendor:publish --tag=actionablelist --force
这将把视图复制到您应用中的 resources/views/vendor/actionablelist 文件夹,这样您就可以自定义它们并保持版本控制。--force 参数会覆盖任何同名现有视图,如果您正在从旧版本更新此包,这将非常有用。
用法
创建表格的完整语法
// Instantiate a new Table $table = new Table(); // Add columns $table->addColumns(['Quantity', 'Color', 'Animal']); // Add the dataset $table->addDataset([ ['one', 'red', 'cat'], ['two', 'green', 'bird'], ['three', 'blue', 'dog'], ]); // Set the formatter for a column $table->columns[0]->setFormatter(function ($animals) { return 'The color is ' . $animals[1]; });
快速创建表格
您也可以使用静态 make() 函数快速创建新的表格。第一个参数是列的数组,第二个参数是每个列的格式化器数组,第三个参数是数据集。
示例:创建一个有三个列和两个项目的表格。
$table = Table::make([ 'id' => 'ID', 'title' => 'Title', 'created_by' => 'Author', ], [ function ($row) { return 'ID: ' . $row[0]; }, function ($row) { // Return the title return $row[1]; }, function ($row) { return new HtmlString('<em>The author is:</em> ' . $row[2]); }, ], [ [1, 'Lorem Ipsum', 'John Doe'], [2, 'Dolor Sit', 'Pippo Pluto'], // ...more rows... ]);
表格还具有流畅的接口,允许您像查询构建器一样链式调用方法。
Table::addColumns($columns)->addDataset($data)->addFormatters($formatters); // ...and so on
数据集
数据集可以是数组、集合、Eloquent 集合或任何实现了 ArrayAccess 接口的其它 可迭代 对象。
在视图中打印表格
在您的 Blade 视图中,您可以通过以下方式打印表格
@include('actionablelist::table')
测试
vendor/bin/phpunit vendor/gasparilab/actionablelist/tests
Postcardware
此包采用 MIT 许可证,但如果它进入您的生产环境,我们将非常感谢您从您的家乡寄给我们一张明信片。我们的地址是
GaspariLab
via Minghetti, 18
40057 Cadriano di Granarolo E. (BO)
ITALY
鸣谢
由 Luca Andrea Rossi 为 GaspariLab S.r.l. 制作的包。