luckykenlin/livewire-tables

livewire-tables

4.0.1 2023-10-11 21:51 UTC

README

Latest Version on Packagist GitHub Tests Action Status Total Downloads

为 Laravel 开发的动态 livewire 表格组件。

要求

安装

您可以通过 composer 安装此包

composer require luckykenlin/livewire-tables

文档

https://luckykenlin.github.io/livewire-tables/

用法

创建表格

要创建表格组件,您可以从以下示例中获得灵感

php artisan make:table UsersTable

要指定模型使用 --model

php artisan make:table UsersTable --model=User
<?php

namespace App\Http\Livewire;

use App\Models\User;
use Illuminate\Database\Eloquent\Builder;
use Luckykenlin\LivewireTables\Views\Action;
use Luckykenlin\LivewireTables\Views\Column;
use Luckykenlin\LivewireTables\LivewireTables;

class UsersTable extends LivewireTables
{
    public function query(): Builder
    {
        return User::query();
    }

    public function columns(): array
    {
        return [
            Column::make('#', 'id')->sortable(),
            Column::make('Name', 'name')->searchable()->sortable(),
            Column::make('Email', 'email')->searchable()->sortable(),

            Action::make()
        ];
    }
}

您的组件必须实现两种方法

/**
 * This defines the start of the query, usually Model::query() but can also eager load relationships and counts if needed.
 */
public function query() : Builder;

/**
 * This defines the columns of the table, they don't necessarily have to map to columns on the database table.
 */
public function columns() : array;

渲染表格

将以下内容放置在您希望表格出现的位置。

<livewire:users-table />

待办/路线图

  • 用户列选择
  • 批量操作
  • 日期筛选
  • 选择筛选
  • 多选筛选
  • 批量操作
  • CDN CSS
  • 测试套件

测试

composer test

变更日志

请参阅 CHANGELOG 了解最近更改的详细信息。

贡献

请参阅 CONTRIBUTING 了解详细信息。

安全漏洞

请查看 我们的安全策略 了解如何报告安全漏洞。

鸣谢

许可协议

MIT 许可协议 (MIT)。请参阅 许可文件 了解更多信息。