assasz/rmr

RMR 架构的实现变体。

维护者

详细信息

github.com/Assasz/rmr

源代码

问题

安装: 1

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 1

类型:项目

dev-master 2020-07-03 15:06 UTC

This package is auto-updated.

Last update: 2024-09-29 05:41:44 UTC


README

关于此特定架构的更多信息,请点击这里。上面的代码是我自己的实现变体,它是在长时间的隔离中诞生的;(;)尽管如此,它仍在开发中。

我更愿意称它为 ROR(资源-操作-表示)架构,其中控制器逻辑从资源移动到单独的类,即 操作。它们遵循请求处理器模式,实际上就像 ADR 架构中已知的行为组件。

安装

通过 Composer

composer create-project assasz/rmr=dev-master
cd rmr
cp .env.dist .env && cp .env.test.dist .env.test

设置数据库

# .env
DATABASE_URL='mysql://user:secret@localhost/mydb'
./vendor/bin/doctrine orm:schema-tool:create
./vendor/bin/doctrine orm:schema-tool:update --force

设置测试环境

# .env.test
DATABASE_URL='mysql://user:secret@localhost/mydb_test'
BASE_URI='https://'

实用工具

为指定环境加载固定数据(默认为 dev

php bin/console app:load-fixtures --env=dev

为现有资源生成基本 API

php bin/console app:generate-api

将 OpenAPI 文档生成到 YAML 文件

./vendor/bin/openapi --output openapi/openapi.yaml src/ public/