nabcellent/codeigniter4-eloquent

CodeIgniter 4 的 Illuminate/Eloquent 包。

v1.1.7 2021-11-09 01:17 UTC

This package is auto-updated.

Last update: 2024-09-09 07:17:13 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

Codeigniter 数据库包。

这最初是从 agungsugiarto/codeigniter4-eloquent 分支出来的。更改包括

  • 支持 PHP 7.4 及以上版本。
  • 更新 illuminate/database 到 8
  • 更新 illuminate/pagination 到 8

安装

通过 Composer 包含此包:添加 -W 以降级 psr/container 包,因为 Illuminate/container 需要该版本。

composer require nabcellent/codeigniter4-eloquent -W

发布配置

使用以下 spark 命令发布配置文件

php spark eloquent:publish

自定义视图分页

默认视图适用于带有预设的 bootstrap4 和基本 HTML 的分页,如果您想自定义,只需从 \vendor\nabcellent\codeigniter4-eloquent\src\Views\Bootstrap4.php 复制并修改您的样式,然后将其放在 App\Views 文件夹中。最后,更改您的配置在 App\Config\Eloquent.php

设置服务 eloquent

打开 App\Controllers\BaseController.php

在 initController 函数中添加 service('eloquent');

//--------------------------------------------------------------------
// Preload any models, libraries, etc, here.
//--------------------------------------------------------------------
// E.g.:
// $this->session = \Config\Services::session();

service('eloquent');

使用

示例模型

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Authors extends Model
{
    protected $table = 'authors';
    protected $primaryKey = 'id';
}

在控制器中使用示例

<?php 

namespace App\Controllers;

use App\Models\Authors;
use Nabz\Models\DB;

class Home extends BaseController
{
	public function index()
	{
		return $this->response->setJSON([
			'data'   => Authors::all(),
			'sample' => DB::table('authors')->skip(1)->take(100)->get(),
		]);
	}
}

更多信息请参考:laravel 文档

安全

如果您发现任何与安全相关的问题,请通过电子邮件 nabcellent.dev@gmail.com 而不是使用问题跟踪器。

许可证

此软件包是免费软件,根据 MIT 许可证 的条款进行分发。