gcsystem / scaffolding
GCsystem PHP 框架的脚手架插件
dev-master / 1.0.x-dev
2018-05-31 07:29 UTC
Requires
- php: >=5.6
This package is not auto-updated.
Last update: 2024-09-28 17:32:31 UTC
README
- 开源
- 版本:3.1 Bêta
- 作者:Fabsgc
- 贡献者:Lucas5190, t1307
- 描述:GCsystem 框架的脚手架插件
安装
- 在 composer 中添加
"autoload": { "psr-4": { "Scaffolding\\" : "vendor/gcsystem/scaffolding/src" } },
然后,创建一个新的控制器,并将 extends Controller
替换为 extends \Scaffolding\Scaffolding
<?php namespace Gcs; use System\Config\Config; use System\Response\Response; /** * Class Scaffolding * @package Gcs * @Before(class="\Gcs\Scaffolding", method="init") */ class Scaffolding extends \Scaffolding\Scaffolding { public function init() { if (Config::config()['user']['debug']['environment'] != 'development') { Response::instance()->status(404); } } }
有五个操作,除了第一个,其余都需要一个或两个 GET 参数:"entity"(实体名称)和 id(主键)
- home
- entity
- insert
- update
- delete
您可以重写这些方法来自定义管理。
然后例如创建这些路由
<group name="scaffolding" url="/scaffolding" action="scaffolding"> <route name="default" url="(/*)" action="home"/> <route name="insert" url="/entity/insert/([a-zA-Z]+)(/*)" action="insert" vars="entity"/> <route name="update" url="/entity/update/([a-zA-Z]+)/([0-9]+)(/*)" action="update" vars="entity,id"/> <route name="delete" url="/entity/delete/([a-zA-Z]+)/([0-9]+)(/*)" action="delete" vars="entity,id"/> <route name="entity" url="/entity/([a-zA-Z]+)(/*)" action="entity" vars="entity"/> </group>
许可证
licence MIT