rougin/combustor

Codeigniter 框架的 CRUD 生成器。

v1.2.4 2018-04-18 04:55 UTC

This package is auto-updated.

Last update: 2024-09-27 14:18:44 UTC


README

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

Combustor 是一个基于数据库表的控制器、模型和视图生成的 Codeigniter 库。它使用 Describe 库来检索数据库表,并以此为基础进行代码生成。

功能

  • 根据 Codeigniter 框架的结构生成代码
  • 加快原型化 Web 应用程序的开发速度
  • 视图模板基于 Bootstrap,以后也可以进行修改
  • 只需要关注数据库模式,Combustor 会做其余的工作

安装

  1. 在此 下载 Codeigniter 框架 并将其解压到 Web 服务器。
  2. application/config/database.php 中配置应用程序的数据库连接设置。
  3. 通过 Composer 包管理器安装 Combustor
$ composer require rougin/combustor --dev
  1. 安装 ORM 包装器 WildfireDoctrine ORM 或两者都安装
$ vendor/bin/combustor install:wildfire
$ vendor/bin/combustor install:doctrine

命令

create:layout

创建新的头部和底部文件。

选项

  • --bootstrap - 包含 Bootstrap 标签

示例

$ vendor/bin/combustor create-layout --bootstrap

create:controller

创建新的 HTTP 控制器。

参数

  • name - 数据库表名称

选项

  • --camel - 使用驼峰命名法命名访问器和修改器
  • --doctrine - 根据 Doctrine 生成控制器
  • --keep - 保持要使用的名称
  • --lowercase - 保持名称的首字母小写
  • --wildfire - 根据 Wildfire 生成控制器

示例

$ vendor/bin/combustor create:controller users --camel --wildfire

create:model

创建新的模型。

参数

  • name - 数据库表名称

选项

  • --camel - 使用驼峰命名法命名访问器和修改器
  • --doctrine - 根据 Doctrine 生成控制器
  • --keep - 保持要使用的名称
  • --lowercase - 保持名称的首字母小写
  • --wildfire - 根据 Wildfire 生成控制器

示例

$ vendor/bin/combustor create:model users --camel --wildfire

create:view

创建新的视图模板。

参数

  • name - 数据库表名称

选项

  • --bootstrap - 包含 Bootstrap 标签
  • --camel - 使用驼峰命名法命名访问器和修改器
  • --doctrine - 根据 Doctrine 生成控制器
  • --keep - 保持要使用的名称
  • --lowercase - 保持名称的首字母小写
  • --wildfire - 根据 Wildfire 生成控制器

示例

$ vendor/bin/combustor create:view users --bootstrap

create:scaffold

创建新的 HTTP 控制器、模型和视图模板。

参数

  • name - 数据库表名称

选项

  • --bootstrap - 包含 Bootstrap 标签
  • --camel - 使用驼峰命名法命名访问器和修改器
  • --doctrine - 根据 Doctrine 生成控制器
  • --keep - 保持要使用的名称
  • --lowercase - 保持名称的首字母小写
  • --wildfire - 根据 Wildfire 生成控制器

示例

$ vendor/bin/combustor create:scaffold users --bootstrap --wildfire

Wildfire 的方法

以下方法在安装了 --wildfire 时可用

delete($table, $delimiters = [])

从存储中删除指定数据。

参数

  • $table - 数据库表名称
  • $delimiters - 分隔要返回的行列表

示例

$this->wildfire->delete('users', ['id' => 3]);

find($table, $delimiters = [])

从指定的 ID 或从指定的表中具有指定分隔符的列表中查找行。

参数

  • $table - 数据库表名称
  • $delimiters - 分隔要返回的行列表

示例

$this->wildfire->delete('users', ['id' => 3]);

get_all($table, $delimiters = [])

返回指定表中的所有行。

参数

  • $table - 数据库表名称
  • $delimiters - 分隔要返回的行列表
    • keyword - 用于从存储中搜索数据
    • per_page - 定义每页的行数

返回方法

  • as_dropdown($description) - 返回可以在 form_dropdown() 中使用的行列表
    • description - 要在结果中显示的字段(默认值为 description
  • result() - 返回在模型中的存储中的行列表
  • total_rows() - 返回基于结果的总行数

示例

$delimiters = ['keyword' => 'test', 'per_page' = 3];

$result = $this->wildfire->all('users', $delimiters);

var_dump((array) $result->result());

注意:此方法在安装了 --doctrine 时也可用。

提示

  • 如果安装了 Wildfire 或 Doctrine,则无需指定选项即可执行指定的命令(例如,vendor/bin/combustor create:controller --wildfire)。但是,如果两者都安装了,则要执行的命令必须添加 --wildfire--doctrine 选项。

  • 要了解Doctrine的功能和概念,请访问文档页面:这里

  • 在生成模型、视图和控制器之前,请确保数据库已正确定义(外键、索引、关系、规范化),以最小化代码生成后的修改。此外,首先为数据库中无其他表关系的表生成模型、视图和控制器。

    • 这是因为Combustor将根据指定的数据库模式生成控制器、模型和视图。如果数据库中存在问题,Combustor肯定会生成不良的代码库。
  • 对于发现的错误或建议,请随时打开问题创建拉取请求

更新日志

有关最近更改的详细信息,请参阅更新日志

测试

$ composer test

致谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证