knplabs / knp-minibus-bundle
将 minibus 集成到 symfony2 中
dev-master
2015-11-12 11:25 UTC
Requires
- php: ~5.4
- doctrine/inflector: ~1.0@dev
- jms/serializer-bundle: 0.13.*@dev
- knplabs/minibus: dev-master
- symfony/framework-bundle: *
- symfony/symfony: ~2.4
Requires (Dev)
- bossa/phpspec2-expect: dev-master
- phpspec/nyan-formatters: *
- phpspec/phpspec: *
This package is not auto-updated.
Last update: 2024-09-10 15:52:09 UTC
README
Yolo Yolo ^.^. 这是 Minibus(在 Symfony2 应用程序中)的集成。
一个 Minibus,但是为什么?
Minibus 是一个独立的 PHP 5.4 库,允许你将应用程序的责任和操作解耦到多个 站。主要目标是创建 有意义的控制器 并 限制它们的责任。例如,使用 Minibus,你的 应用程序入口点 与 视图 没有关系。它们的责任只限于更改和检索特定的 状态。
安装
安装包
$ php composer.phar require knplabs/knp-minibus-bundle
更新你的 AppKernel
// app/AppKernel.php $bundles = [ // ... new Knp\MinibusBundle\KnpMinibusBundle, ];
快速预览
你等待演示,现在来了!
创建 MinibusBundle
为了开始使用 Minibus,你需要创建你的第一个 MinibusBundle
namespace App; use Knp\MinibusBundle\Bundle\MinibusBundle; class AppBundle extends MinibusBundle { }
现在在 AppKernel
中注册它
// app/AppKernel.php $bundles = [ // ... new App\AppBundle, ];
创建站
站就像控制器,除了你可以在一个 动作 中启动任意多的站,而站 不处理任何视图。实际上,站唯一的角色是创建/检索/更新 Minibus
乘客。(即数据)。
站 必须 位于 BundleNamespace\Station
下并实现 Knp\Minibus\Station
。这是一个站示例
namespace App\Station; use Knp\Minibus\Station; use Knp\Minibus\Minibus; class UsernameStation implements Station { public function handle(Minibus $minibus, array $configuration = []) { $minibus->addPassenger('username', 'Sheldon Cooper'); } }
路由
MinibusBundle 附带完整的 yaml 路由语法,允许你轻松创建一个 线路。一旦你准备好了要使用的站,你可以加载 Minibus 路由。
# app/config/routing.yml app: resource: @AppBundle/Resources/config/routing.yml type: minibus prefix: /
以下是路由
app_some_action: pattern: /some/action method: GET line: app.username: ~ app.other: ~ app.magic: ~ terminus: twig: template: "App::some.html.twig" passengers: magic_man: service: some_service_id method: getMagicMan
试试看!
就是这样。 试试看!。
当然,如果你想获取此包的完整文档,只需遵循指南即可!