protected function _engineRender($engines, $viewPath, $silence, $mustClean, BackendInterface $cache = null) { $silence = $silence && !$this->config['debug']; $this->_options['debug_wrapper'] = $this->config['debug'] ? $viewPath == $this->_mainView ? null : $this->getDebugWrapper($viewPath) : null; $viewPath == $this->_mainView or $viewPath = $this->getAbsoluteViewPath($viewPath); parent::_engineRender($engines, $viewPath, $silence, $mustClean, $cache); }
protected function _engineRender($engines, $viewShortPath, $silence, $mustClean, \Phalcon\Cache\BackendInterface $cache = null) { // $silence = false; // $this->log->info("engines render...".$this->renderCounter."...viewShortPath:$viewShortPath </br>\n"); // $basePath = $this->getBasePath(); //如果设置basePath,使用短路径查找. //则目录路径 = view->basePath + $view->viewPath + $viewShortPath //因为viewPath是根据Controller/Action动态设置的,故此,根据renderCounter判断是否为action的匹配 //非action定位,把ViewsDir设置为空 if ($this->renderCounter > 0) { $this->cleanViewsDir(); } $this->renderCounter += 1; return parent::_engineRender($engines, $viewShortPath, $silence, $mustClean, $cache); }
/** * Override of the _engineRender function that dynamicall resets the cascade paths * * @return void * @author Neil Brayfield **/ protected function _engineRender($engines, $viewPath, $silence, $mustClean, BackendInterface $cache = null) { // get original so it can be restored $this->setViewsDir($this->getCascadeDefault()); // Check directories for existing views $cascadePaths = $this->getCascadePaths(); if ($cascadePaths) { // check default if (!$this->exists($viewPath)) { foreach ($cascadePaths as $path) { $this->setViewsDir($path . 'views/'); if ($this->exists($viewPath)) { break; } } } } parent::_engineRender($engines, $viewPath, $silence, $mustClean, $cache); }