电模块/照亮数据库

将Laravel的Illuminate数据库组件集成到Electro框架中

0.10.15 2021-02-25 18:47 UTC

README

将Laravel的Illuminate数据库组件集成到Electro框架中

介绍

此插件与PhpKit\ExtPDO和框架的数据库子系统集成,因此框架Connections服务上定义的连接将自动作为Illuminate数据库连接可用。

安装

服务器要求

安装

要在您的应用程序上安装此插件,请使用终端,将cd到您的应用程序目录,然后输入

workman install plugin electro-modules/illuminate-database

为了正确运行,请不要直接使用Composer安装此包。

使用插件

首先,将插件API注入到您的控制器(或组件、命令、迁移等)中。

use Electro\Plugins\IlluminateDatabase\DatabaseAPI;

class MyController
{
  private $api;

  function __construct (DatabaseAPI $api) {
    $this->api = $api;
  }
}

使用查询构建器

示例
$this->api->query()->from('products')->where('type','box')->get();

或简单地

$this->api->table('products')->where('type','box')->get();

使用模式构建器

示例
use Illuminate\Database\Schema\Blueprint;

$this->api->schema()->create ('news', function (Blueprint $table) {
    $table->increments ('id');
    $table->string ('title', 100);
});

门面

此插件还模拟了一些常见的数据库相关Laravel门面

  • DB::method() - 等同于 $api->connection ()->method()
  • Schema::method() - 等同于 $api->schema()->method()

这样,您不需要注入API实例即可调用查询构建器或模式构建器。

注意:门面是一个反模式,不建议使用Electro进行开发。

在使用门面之前,请务必导入相关命名空间(不要使用原始门面,它将不起作用)。

  • use Electro\Plugins\IlluminateDatabase\DB;
  • use Electro\Plugins\IlluminateDatabase\Schema;

使用Eloquent

要使用Eloquent,按常规访问您的模型,但不要忘记将它们的类基于 Electro\Plugins\IlluminateDatabase\BaseModel,而不是Illuminate\Database\Eloquent\Model

示例
use Electro\Plugins\IlluminateDatabase\BaseModel;

class Article extends BaseModel { }

$article = Article::find(1);

迁移

可用命令

您还可以在终端中键入workman以获取可用命令列表。

键入worman help xxx(其中xxx是命令名称)以了解每个命令支持哪些参数和选项。

许可证

Electro框架是开源软件,根据MIT许可证授权。

Electro框架 - 版权所有 © Cláudio Silva 和 Impactwave, Lda.