zulyantara/codeigniter4-datatables

适用于CodeIgniter4的服务端Datatables库

dev-master 2023-11-02 11:27 UTC

This package is not auto-updated.

Last update: 2024-09-20 13:27:35 UTC


README

Donate Total Downloads GitHub repo size GitHub

CodeIgniter4-DataTables是CodeIgniter4 PHP框架的库,用于通过AJAX选项使用CodeIgniter 4查询构建器处理Datatables jQuery插件的服务端处理

文档

更多示例和演示请访问此处文档

要求

  • Codeigniter 4.x
  • jQuery DataTables v1.10.x

安装

使用composer(推荐)

使用composer将CodeIgniter4-DataTables安装到您的项目中

composer require hermawan/codeigniter4-datatables

手动安装

如果您不希望使用Composer进行安装,可以手动安装。从git仓库下载此文件。解压并将文件夹重命名为codeigniter4-datatables,在示例中将它放在ThirdParty文件夹中。

此外,此库还需要下载依赖项

$psr4 = [
     APP_NAMESPACE => APPPATH, // For custom app namespace
     'Config'      => APPPATH . 'Config',
     'PHPSQLParser'          => APPPATH .'ThirdParty/php-sql-parser/src/PHPSQLParser', // <-- namespace for php-sql-parser
     'Hermawan\DataTables'   => APPPATH .'ThirdParty/codeigniter4-datatables/src', // <-- namespace for this library
];

简单初始化

使用CodeIgniter查询构建器

这是一段简单的基本代码,只需编写DataTable::of($builder)调用方法toJson()进行输出

$builder是CodeIgniter内置的查询构建器对象。

控制器

use \Hermawan\DataTables\DataTable;

public function ajaxDatatable()
{
    $db = db_connect();
    $builder = $db->table('customers')->select('customerNumber, customerName, phone, city, country, postalCode');

    return DataTable::of($builder)->toJson();
}

使用CodeIgniter模型

您可以使用Model而不是Query Builder进行初始化。以下是一个简单的示例基本代码

控制器

use \Hermawan\DataTables\DataTable;
use \App\Models\CustomerModel;

public function ajaxDatatable()
{
    $customerModel = new CustomerModel();
    $customerModel->select('customerNumber, customerName, phone, city, country, postalCode');

    return DataTable::of($customerModel)->toJson();
}

JavaScript

$(document).ready(function() {
    $('#table').DataTable({
        processing: true,
        serverSide: true,
        ajax: '<?php echo site_url('customers/ajaxDatatable'); ?>'
    });
});

更多示例和演示请访问此处文档