ahmyi/cakephp-datatables

CakePHP 的 DataTables 插件

安装: 8

依赖者: 0

建议者: 0

安全: 0

星标: 1

关注者: 2

分支: 0

开放问题: 0

类型:cakephp-plugin

dev-master 2018-12-25 04:06 UTC

This package is auto-updated.

Last update: 2024-09-07 02:48:37 UTC


README

安装

您可以使用 composer 将此插件安装到您的 CakePHP 应用程序中。

安装 composer 包的推荐方法是

composer require ahmyi/cakephp-datatables:dev-master

使用方法

src/Application.php

$this->addPlugin('Ahmyi/DataTables');

config/bootstrap.php [3.6 之前]

Plugin::load('Ahmyi/DataTables');

控制器

public function initialize(){
        parent::initialize();

        $this->loadComponent('Ahmyi/DataTables.DataTables');
}

public function index(){
    

   $this->DataTables->use("Pages");  // $this->DataTables->use($this->Pages);
   
   if($datatables = $this->DataTables->process()){
        return $datatables;
   }
}

模板

<div class="row">
	<div class="col-sm-12">
		<?= $this->DataTables->render("Pages");?>
	</div>
</div>

定制

模板化

如果您想在控制器中自定义当前模板,请定义新的元素

public function initialize(){
        parent::initialize();

        $this->loadComponent('Ahmyi/DataTables.DataTables',[
		'element'=>'your_element'
	]);
}

您的元素应该包含 2 个主要变量 $ModelName 和 $fields,以下是一个示例

</div><div class='box box-theme'>
	<div class='box-header'>
		<h3><?=$header;?></h3>
	</div>
	<div class='box-body'>
		<div class='col-sm-12'>
			<table id='DT<?=$ModelName?>'  cellpadding='0' cellspacing='0' border='0' class='display' width='100%''>
				<thead>
					<tr><?=$fields?></tr>
				</thead>
			</table>
		</div>
	</div>
</div>

使用不同的 js 或 css 资产

您可以使用不同的 Css 或 Js,如下所示,可以是字符串或数组,用于多个资产

public function initialize(){
        parent::initialize();

        $this->loadComponent('Ahmyi/DataTables.DataTables',[
		'css'=>'your.css'
		'js'=>'your.js'
	]);
}