white-frame/dynatable 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

white-frame/dynatable

最新稳定版本:5.2.0.0

Composer 安装命令:

composer require white-frame/dynatable

包简介

Very simple server-side Dynatable handler for Laravel 5

README 文档

README

Deprecated : As the DynatableJs is no longer supported by the authors, this package is deprecated.

Dynatable

Very simple server-side Dynatable handler for Laravel. It handle the ajax calls from the dynatable jquery plugin in the front end.

Using this plugin you can use server-side (ajax) pagination, sorting, global search and specific search. With a simple API you can customize all handlings such as search, sort, column display.

This package is part of WhiteFrame Framework. Features like Widget can be only used when installed from white-frame/white-frame. See WhiteFrame Usage section.

Installation

Laravel 5

Install the package using composer :

composer require white-frame/dynatable:2.*

Laravel 4 : see v1 branch

General Usage

This is a light working example :

<?php
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use WhiteFrame\Dynatable\Dynatable;

class UserController extends Controller
  public function dynatable(Request $request)
  {
    // Get a query builder of what you want to show in dynatable
    $cars = Car::where('year', '=', 2007); // or Car::query() for all cars
    $columns = ['id', 'name', 'price', 'stock'];
    
    // Build dynatable response with your query builder, columns and all input from dynatable font end javascript
    $dynatable = Dynatable::of($cars, $columns, $request->all()));
    
    // ... Here you can customize the result and change columns handling with $dynatable (see example below)
    
    // Build the response and return to the table
    return $dynatable->make();
  }
}

Customize columns handling

Change the content of a column :

$dynatable->column('price', function($car) {
    return number_format($car->price) . ' $';
});

Add a new column for each row :

$dynatable->column('actions', function($car) {
    return '<a href="/car/' . $car->id . '">View</a>';
});

Customize column sorting :

$dynatable->sort('id', function($query, $mode) {
    return $query->orderBy('id', $mode == 'asc');
});

Customize global searching :

$dynatable->search(function($query, $term) {
    return $query->where('name', 'LIKE', '%' . $term . '%');
});

Customize specific column searching :

$dynatable->search('year', function($query, $term) {
    return $query->whereBetween('year', array($term - 5, $term + 5));
});

The use of Dynatable::of

The Dynatable::of static method require 3 parameters :

  • The query builder you want to work with
  • If you want to get an object query builder without doing any where, you can do Car::query().
  • An array containing columns to display
  • The requests input (generally $request->all() is fine).

WhiteFrame Usage

Work to do here ... :)

统计信息

  • 总下载量: 758
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 0
  • 依赖项目数: 2
  • 推荐数: 0

GitHub 信息

  • Stars: 3
  • Watchers: 3
  • Forks: 4
  • 开发语言: PHP

其他信息

  • 授权协议: WTFPL
  • 更新时间: 2015-11-10