cradlephp/cradle-system

Cradle 的模式、关系、对象事件和控制器

安装次数: 1,653

依赖项: 3

建议者: 0

安全性: 0

星标: 2

关注者: 3

分支: 8

类型:cradle-package


README

模式、模型和关系管理器。

安装

如果您已经安装了 Cradle,可能不需要安装此包,因为它应该已经包含在内。

composer require cradlephp/cradle-system
$ bin/cradle cradlephp/cradle-system install

模式

模式类似于数据库表,但具有更多的定义。使用模式,您可以定义字段类型、验证、输出格式和索引能力,如可搜索、可筛选和可排序。模式设计得非常灵活和明确。

模式路由

以下路由在管理界面中可用。

  • GET /admin/system/schema/search - 模式搜索页面
  • GET /admin/system/schema/create - 模式创建表单
  • GET /admin/system/schema/update/:name - 模式更新表单
  • POST /admin/system/schema/search - 批量操作处理器
  • POST /admin/system/schema/create - 创建模式
  • POST /admin/system/schema/update/:name - 更新模式
  • GET /admin/system/schema/remove/:name - 删除模式
  • GET /admin/system/schema/restore/:name - 恢复模式

模式事件

  • system-schema-create
  • system-schema-detail
  • system-schema-remove
  • system-schema-restore
  • system-schema-update

关系

关系描述了两个对象之间的链接。关系可以通过以下方式描述。每种关系类型将在管理界面中具有不同的 UI 集合。

  • 1:0 - 一对一可选
  • 1:1 - 一对一必需
  • 1:N - 一对多
  • N:N - 多对多

关系路由

以下路由在管理界面中可用。

  • GET /admin/system/object/:schema1/:id/search/:schema2 - 关系搜索页面
  • GET /admin/system/object/:schema1/:id/create/:schema2 - 关系创建表单
  • GET /admin/system/object/:schema1/:id/link/:schema2 - 关系链接表单
  • POST /admin/system/object/:schema1/:id/search/:schema2 - 批量操作处理器
  • POST /admin/system/object/:schema1/:id/create/:schema2 - 创建对象和链接
  • POST /admin/system/object/:schema1/:id/link/:schema2 - 链接对象
  • GET /admin/system/object/:schema1/:id1/link/:schema2/:id2 - 链接对象
  • GET /admin/system/object/:schema1/:id1/unlink/:schema2/:id2 - 解除对象链接
  • GET /admin/system/object/:schema1/:id/export/:schema2/:type - 导出对象关系
  • GET /admin/system/object/:schema/:id/import/:schema2 - 导入对象关系

以下路由在前端可用。

  • GET /system/object/:schema1/:id/search/:schema2 - 关系搜索页面
  • GET /system/object/:schema1/:id/create/:schema2 - 关系创建表单
  • GET /system/object/:schema1/:id/link/:schema2 - 关系链接表单
  • POST /system/object/:schema1/:id/search/:schema2 - 批量操作处理器
  • POST /system/object/:schema1/:id/create/:schema2 - 创建对象和链接
  • POST /system/object/:schema1/:id/link/:schema2 - 链接对象
  • GET /system/object/:schema1/:id1/link/:schema2/:id2 - 链接对象
  • GET /system/object/:schema1/:id1/unlink/:schema2/:id2 - 解除对象链接
  • GET /system/object/:schema1/:id/export/:schema2/:type - 导出对象关系
  • GET /system/object/:schema/:id/import/:schema2 - 导入对象关系

关系事件

  • system-relation-link
  • system-relation-unlink
  • system-relation-unlinkall

对象

对象类似于数据库表行,但其功能通过模式映射。

对象路由

以下路由在管理界面中可用。

  • GET /admin/system/object/:schema/search - 对象搜索页面
  • GET /admin/system/object/:schema/create - 对象创建表单
  • GET /admin/system/object/:schema/update/:id - 对象更新表单
  • POST /admin/system/object/:schema/create - 创建对象
  • POST /admin/system/object/:schema/update/:id - 更新对象
  • GET /admin/system/object/:schema/remove/:id - 删除对象
  • GET /admin/system/object/:schema/restore/:id - 恢复对象
  • POST /admin/system/object/:schema/import - 通过JSON导入对象
  • GET /admin/system/object/:schema/export/:type - 将对象导出为指定的文件类型

以下路由在前端可用。

  • GET /system/object/:schema/search - 对象搜索页面
  • GET /system/object/:schema/create - 对象创建表单
  • GET /system/object/:schema/update/:id - 对象更新表单
  • POST /system/object/:schema/create - 创建对象
  • POST /system/object/:schema/update/:id - 更新对象
  • GET /system/object/:schema/remove/:id - 删除对象
  • GET /system/object/:schema/restore/:id - 恢复对象
  • POST /system/object/:schema/import - 通过JSON导入对象
  • GET /system/object/:schema/export/:type - 将对象导出为指定的文件类型

对象事件

  • system-object-create
  • system-object-detail
  • system-object-remove
  • system-object-restore
  • system-object-update

为Cradle PHP做贡献

感谢您考虑为Cradle PHP做出贡献。

请不要在此存储库中创建问题。官方问题跟踪器位于https://github.com/CradlePHP/cradle/issues 。在此创建的问题可能很可能会被忽略。

请注意,master分支包含当前版本的所有边缘版本。请检查您正在使用的版本,并找到相应的分支。例如v1.1.1可以在1.1分支中。

错误修复将尽快审查。也将考虑小功能,但请给我时间来审查它并回复您。主要功能将仅在master分支上考虑。

  1. 分叉存储库。
  2. 启动您的本地终端并切换到您想要贡献的版本。
  3. 做出您的更改。
  4. 始终确保在所有提交上签名(git commit -s -m "提交信息")

创建拉取请求

  1. 请在创建拉取请求之前确保运行phpunitphpcs
  2. 将您的代码推送到您远程分叉的版本。
  3. 回到您在GitHub上分叉的版本,并提交一个拉取请求。
  4. 所有拉取请求都将通过Travis CI 进行测试。同时请注意,Coveralls 也用于分析您贡献的覆盖率。