首页 > 解决方案 > Cakephp3插件中的setTemplatePath

问题描述

如何设置相对于插件的视图的模板路径?这就是我想要做的:

$view = new View();
$view->setLayout('Kuroi/EvzDuser.email'); // <-- this works
$view->setTemplatePath('Kuroi/EvzDuser.Plugin'); // <-- this doesn't work!!!
$view->set('html',$html);
$view->set('lang',$this->lang);
$layout=$view->render('email_register');

CakePhp 在错误的目录中寻找我的模板文件 (email_register.ctp):

确认您已在以下路径之一中创建了文件:“Kuroi/EvzDuser.Plugin/email_register.ctp”:

/Applications/AMPPS/www/eventspritz.com/evz_2019/src/Template/Kuroi/EvzDuser.Plugin/email_register.ctp

我的模板文件 (email_register.ctp) 位于以下目录中:

/Applications/AMPPS/www/eventspritz.com/evz_2019/plugins/Kuroi/EvzDuser/src/Template/Plugin

标签: cakephppluginscakephp-3.0

解决方案


好的,抱歉,我找到了解决方案。对于任何有兴趣的人:

$view = new View();
$view->setLayout('Kuroi/EvzDuser.email');
$view->setTemplatePath('Plugin');
$view->set('html',$html);
$view->set('lang',$this->lang);
$layout=$view->render('Kuroi/EvzDuser.email_register');

推荐阅读