Пример #1
0
 /**
  * Process all the models attached to a controller
  * and generate a fixture list.
  *
  * @param \Cake\Controller\Controller $subject A controller to pull model names off of.
  * @return void
  */
 protected function _processController($subject)
 {
     $subject->constructClasses();
     $models = [$subject->modelClass];
     foreach ($models as $model) {
         list(, $model) = pluginSplit($model);
         $this->_processModel($subject->{$model});
     }
 }
Пример #2
-1
 /**
  * test that paginate uses modelClass property.
  *
  * @return void
  */
 public function testPaginateUsesModelClass()
 {
     $request = new Request('controller_posts/index');
     $request->params['pass'] = array();
     $response = $this->getMock('Cake\\Network\\Response', ['httpCodes']);
     $Controller = new Controller($request, $response);
     $Controller->request->query['url'] = [];
     $Controller->constructClasses();
     $Controller->modelClass = 'Posts';
     $results = $Controller->paginate();
     $this->assertInstanceOf('Cake\\ORM\\ResultSet', $results);
 }
Пример #3
-4
 /**
  * Initializes the components and models a controller will be using.
  * Triggers the controller action and invokes the rendering if Controller::$autoRender
  * is true. If a response object is returned by controller action that is returned
  * else controller's $response property is returned.
  *
  * @param Controller $controller Controller to invoke
  * @return \Cake\Network\Response The resulting response object
  * @throws \Cake\Error\Exception If data returned by controller action is not an
  *   instance of Response
  */
 protected function _invoke(Controller $controller)
 {
     $controller->constructClasses();
     $result = $controller->startupProcess();
     if ($result instanceof Response) {
         return $result;
     }
     $response = $controller->invokeAction();
     if ($response !== null && !$response instanceof Response) {
         throw new Exception('Controller action can only return an instance of Response');
     }
     if (!$response && $controller->autoRender) {
         $response = $controller->render();
     } elseif (!$response) {
         $response = $controller->response;
     }
     $result = $controller->shutdownProcess();
     if ($result instanceof Response) {
         return $result;
     }
     return $response;
 }