当前位置: 首页>>代码示例>>PHP>>正文


PHP Dispatcher::setModelBinding方法代码示例

本文整理汇总了PHP中Phalcon\Mvc\Dispatcher::setModelBinding方法的典型用法代码示例。如果您正苦于以下问题:PHP Dispatcher::setModelBinding方法的具体用法?PHP Dispatcher::setModelBinding怎么用?PHP Dispatcher::setModelBinding使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Phalcon\Mvc\Dispatcher的用法示例。


在下文中一共展示了Dispatcher::setModelBinding方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: boot

 public function boot(Container $container)
 {
     // As of phalcon 3, definition will bind to di by default
     $container->setShared('dispatcher', function () {
         $eventsManager = $this->getShared('eventsManager');
         $eventsManager->attach('dispatch', new \Pails\Plugins\CustomRender());
         $dispatcher = new PhalconDispatcher();
         $dispatcher->setEventsManager($eventsManager);
         $dispatcher->setDefaultNamespace('App\\Controllers');
         $dispatcher->setModelBinding(true);
         return $dispatcher;
     });
 }
开发者ID:xueron,项目名称:pails,代码行数:13,代码来源:Dispatcher.php

示例2: testModelBinding

 public function testModelBinding(IntegrationTester $I)
 {
     $dispatcher = new Dispatcher();
     $dispatcher->setModelBinding(true);
     $dispatcher->setDI(Di::getDefault());
     $I->assertInstanceOf('Phalcon\\Di', $dispatcher->getDI());
     $I->haveServiceInDi('dispatcher', $dispatcher);
     // Model to test with
     $model = People::findFirst();
     $dispatcher->setControllerName('test10');
     $dispatcher->setActionName('view');
     $dispatcher->setParams([$model->cedula]);
     $dispatcher->dispatch();
     $I->assertInstanceOf('Phalcon\\Test\\Models\\People', $dispatcher->getReturnedValue());
     $I->assertEquals($model->cedula, $dispatcher->getReturnedValue()->cedula);
     // Reset dispatcher
     $dispatcher = new Dispatcher();
     $dispatcher->setDI(Di::getDefault());
     $I->assertInstanceOf('Phalcon\\Di', $dispatcher->getDI());
     $I->haveServiceInDi('dispatcher', $dispatcher);
     $dispatcher->setControllerName('test9');
     $dispatcher->setActionName('view');
     $dispatcher->setParams([$model->cedula]);
     try {
         $dispatcher->dispatch();
         $I->assertTrue(false, 'Here must be the exception about passing non model to the controller action');
     } catch (\Exception $e) {
         // PHP 5.x
         $I->assertEquals('Argument 1 passed to Test9Controller::viewAction() must be an instance of Phalcon\\Mvc\\Model, string given', $e->getMessage());
     } catch (\TypeError $e) {
         // PHP 7.x
         $I->assertEquals('Argument 1 passed to Test9Controller::viewAction() must be an instance of Phalcon\\Mvc\\Model, string given', $e->getMessage());
     }
     $dispatcher->setModelBinding(true);
     $dispatcher->dispatch();
     $I->assertInstanceOf('Phalcon\\Test\\Models\\People', $dispatcher->getReturnedValue());
     $I->assertEquals($dispatcher->getReturnedValue()->cedula, $model->cedula);
 }
开发者ID:phalcon,项目名称:cphalcon,代码行数:38,代码来源:ControllersCest.php


注:本文中的Phalcon\Mvc\Dispatcher::setModelBinding方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。