cycle/schema-builder
Composer 安装命令:
composer require cycle/schema-builder
包简介
Cycle ORM Schema Builder
README 文档
README
Schema Builder package provides a convenient way to configure your ORM and Database schema via annotations (attributes) or custom generators.
Installation
composer require cycle/schema-builder
Configuration
use Cycle\Migrations; use Cycle\Database; use Cycle\Database\Config; $dbal = new Database\DatabaseManager(new Config\DatabaseConfig([ 'default' => 'default', 'databases' => [ 'default' => [ 'connection' => 'sqlite' ] ], 'connections' => [ 'sqlite' => new Config\SQLiteDriverConfig( connection: new Config\SQLite\MemoryConnectionConfig(), queryCache: true, ), ] ])); $registry = new \Cycle\Schema\Registry($dbal);
We can now register our first entity, add its columns and link to a specific table:
use Cycle\Schema\Definition; $entity = new Definition\Entity(); $entity ->setRole('user') ->setClass(User::class); // add fields $entity->getFields() ->set('id', (new Definition\Field())->setType('primary')->setColumn('id')->setPrimary(true)) ->set('name', (new Definition\Field())->setType('string(32)')->setColumn('user_name')); // register entity $r->register($entity); // associate table $r->linkTable($entity, 'default', 'users');
You can generate ORM schema immediately using Cycle\Schema\Compiler:
use Cycle\Schema\Compiler; $schema = (new Compiler())->compile($r); $orm = $orm->with(schema: new \Cycle\ORM\Schema($schema));
You can find more information about Schema builder package here.
License:
The MIT License (MIT). Please see LICENSE for more information. Maintained
by Spiral Scout.
cycle/schema-builder 适用场景与选型建议
cycle/schema-builder 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 817.82k 次下载、GitHub Stars 达 15, 最近一次更新时间为 2019 年 02 月 27 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 cycle/schema-builder 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 cycle/schema-builder 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 817.82k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 15
- 点击次数: 23
- 依赖项目数: 25
- 推荐数: 3
其他信息
- 授权协议: MIT
- 更新时间: 2019-02-27