saguajardo / datatable
Laravel 5 用于 Datatables 的库
1.3.x-dev
2017-06-27 16:26 UTC
Requires
This package is not auto-updated.
Last update: 2024-09-19 10:41:13 UTC
README
Laravel 5 datatable
Laravel 5 的 Datatable。借助 Laravel 5 的 Datatable 类,可以轻松重用和修改通过 Ajax 查询的 datatables。默认情况下,它使用 Bootstrap 3,但也可以不使用 Bootstrap。
变更日志
变更日志可在 此处 找到
###安装
{ "require": { "saguajardo/datatable": "dev-master" } }
执行 composer update
然后在 config/app.php
文件中的 providers
部分,添加以下行
'providers' => [ // ... Saguajardo\Datatable\DatatableServiceProvider::class, ]
现在在 config/app.php
文件中的 aliases
部分,添加 Facades
'aliases' => [ // ... 'Datatable'=> Saguajardo\Datatable\Facades\DatatableFacade::class, 'DatatableBuilder'=> Saguajardo\Datatable\DatatableBuilder::class, ]
快速入门
创建 datatables 类非常简单。
需要在 app/Datatables/
目录下创建名为 PruebaDatatable.php
的文件,内容如下
<?php namespace App\Datatables; use Saguajardo\Datatable\Datatable; class PruebaDatatable extends Datatable { public function buildDatatable() { $this ->add('Descripción') ->add('Perfil') ->add('Acción'); } }
注意:目录可以是您喜欢的任何位置。在我这个例子中,我在 app 目录下创建了它
之后,在控制器中实例化该类并将其发送到视图
<?php namespace App\Http\Controllers; use App\Http\Controllers\Controller; use Saguajardo\Datatable\DatatableBuilder; class PruebaController extends Controller { /** * Create a new controller instance. * * @return void */ public function __construct() { //Construct WelcomeController } public function prueba(DatatableBuilder $datatableBuilder) { // Creo el datatable $datatable = $datatableBuilder->create(\App\Datatables\PruebaDatatable::class, [ 'method' => 'GET', 'url' => 'listado', 'data' => ['id' => 'usuariosTable', 'fields' => [ 'data.descripcion', 'data.perfil', 'createEditDeleteButton(data.id)', ] ], ]); return view('prueba', compact('datatable')); } public function listado() { $array[] = array( "id" => 10, "descripcion" => "Prueba", "perfil" => "Admin", "id_perfil" => 20, ); echo json_encode(array( "data" => $array )); } }
创建路由
// app/Http/routes.php Route::get('prueba', array('as' => 'prueba', 'uses' => 'PruebaController@prueba')); Route::get('listado', array('as' => 'listado', 'uses' => 'PruebaController@listado'));
使用 Datatable()
辅助函数在视图中打印 Datatable
<!-- resources/views/prueba.blade.php -->
@extends('app')
@section('content')
{!! Datatable($datatable) !!}
@endsection
访问 /prueba
URL;上面的代码将生成以下内容
要发布配置文件,需要使用 artisan 执行以下命令
php artisan vendor:publish
这会创建 config/datatable.php
文件(从中可以修改类的配置)以及 resources/views/vendor/datatable/
目录中使用的视图。在这些视图中,可以根据需要修改 datatables 的模板。