Maison > Article > développement back-end > phalcon中volt引擎不起作用
生成的项目多模块项目,volt引擎不起作用,js,css加载没反应,partials也不好使,视图没法输出,貌似是volt引擎没有注册成功还是其他原因?
ps:但是自带引擎。后缀为.phtml的格式的文件按照手册上是可以引入js,css,partials文件。在上面的基础上,把后缀变成.volt格式后,还需要改什么地方,才好使呢?
目录结构
下面是config/services.php中的部分代码,在生成项目时自动生成的
<code>$di->setShared('view', function () use ($config) { $view = new View(); $view->setViewsDir($config->application->viewsDir); $view->registerEngines(array( '.volt' => function ($view, $di) use ($config) { $volt = new VoltEngine($view, $di); $volt->setOptions(array( 'compiledPath' => $config->application->cacheDir, 'compiledSeparator' => '_' )); return $volt; }, '.phtml' => 'Phalcon\Mvc\View\Engine\Php' // '.volt' => 'Phalcon\Mvc\View\Engine\Php' )); return $view; });</code>
模块下的 Module.php 还是生成项目生产时的,没有变动!
在 views/index.volt中
加载partials
<code>{{ partial("partials/header") }} {{ partial("partials/main") }} {{ partial("partials/footer") }}</code>
加载js
<code>{{ javascript_include("/js/1.11.3.jquery.min.js") }}</code>
生成的项目多模块项目,volt引擎不起作用,js,css加载没反应,partials也不好使,视图没法输出,貌似是volt引擎没有注册成功还是其他原因?
ps:但是自带引擎。后缀为.phtml的格式的文件按照手册上是可以引入js,css,partials文件。在上面的基础上,把后缀变成.volt格式后,还需要改什么地方,才好使呢?
目录结构
下面是config/services.php中的部分代码,在生成项目时自动生成的
<code>$di->setShared('view', function () use ($config) { $view = new View(); $view->setViewsDir($config->application->viewsDir); $view->registerEngines(array( '.volt' => function ($view, $di) use ($config) { $volt = new VoltEngine($view, $di); $volt->setOptions(array( 'compiledPath' => $config->application->cacheDir, 'compiledSeparator' => '_' )); return $volt; }, '.phtml' => 'Phalcon\Mvc\View\Engine\Php' // '.volt' => 'Phalcon\Mvc\View\Engine\Php' )); return $view; });</code>
模块下的 Module.php 还是生成项目生产时的,没有变动!
在 views/index.volt中
加载partials
<code>{{ partial("partials/header") }} {{ partial("partials/main") }} {{ partial("partials/footer") }}</code>
加载js
<code>{{ javascript_include("/js/1.11.3.jquery.min.js") }}</code>
贴你的volt模板在DI中注册的代码部分
贴你的加载JS、CSS的代码部分
贴你使用partial的代码部分
贴代码!贴代码!贴代码!重说三!不贴代码就提代码相关的问题,都是耍流氓
<code>$di->set('view', function () use ($config) { $view = new View(); $view->setViewsDir(APP_PATH . $config->application->layouts_dir); $view->registerEngines( array( '.volt' => function ($view, $di) use ($config) { $volt = new VoltExtension($view, $di); $volt->setOptions( array( 'compiledPath' => APP_PATH . $config->application->cache_dir, 'compileAlways' => $config->application->debug, 'compiledSeparator' => '_', 'layoutDir' => $config->application->layouts_dir, )); if (!empty($config->volt->extensions)) { foreach ($config->volt->extensions as $extension_class_name) { $di->get('volt.extension')->register($volt, new $extension_class_name($di)); } } return $volt; }, '.phtml' => 'Phalcon\Mvc\View\Engine\Php' ...... )); return $view; }, true);</code>
目录结构
下面是config/services.php中的部分代码,在生成项目是自动生成的
<code>$di->setShared('view', function () use ($config) { $view = new View(); $view->setViewsDir($config->application->viewsDir); $view->registerEngines(array( '.volt' => function ($view, $di) use ($config) { $volt = new VoltEngine($view, $di); $volt->setOptions(array( 'compiledPath' => $config->application->cacheDir, 'compiledSeparator' => '_' )); return $volt; }, '.phtml' => 'Phalcon\Mvc\View\Engine\Php' // '.volt' => 'Phalcon\Mvc\View\Engine\Php' )); return $view; });</code>
模块下的 Module.php 还是生成项目生产时的,没有变动!
在 views/index.volt中
加载partials
<code>{{ partial("partials/header") }} {{ partial("partials/main") }} {{ partial("partials/footer") }}</code>
加载js
<code>{{ javascript_include("/js/1.11.3.jquery.min.js") }}</code>