Templates CakePHP3.x,如何获取模板文件的完整路径

Templates CakePHP3.x,如何获取模板文件的完整路径,templates,cakephp,cakephp-3.0,filepath,Templates,Cakephp,Cakephp 3.0,Filepath,我尝试了$this->viewBuilder()->templatePath(),但这只返回前缀和控制器名称。(例如仪表板/用户) 完整路径更像是/usr/local/var/www/mysite/vendor/vendorname/users/src/Template/Dashboard/users 我尝试了其他一些方法,如Plugin::path($this->viewBuilder()->Plugin())来获取该路径的一部分,但是我还没有找到任何代码段可以返回调用src文件夹和调用Tem

我尝试了
$this->viewBuilder()->templatePath()
,但这只返回前缀和控制器名称。(例如仪表板/用户)

完整路径更像是
/usr/local/var/www/mysite/vendor/vendorname/users/src/Template/Dashboard/users

我尝试了其他一些方法,如
Plugin::path($this->viewBuilder()->Plugin())
来获取该路径的一部分,但是我还没有找到任何代码段可以返回调用
src
文件夹和调用
Template
文件夹的设置


我可以将它们硬编码为
'src'。D模板“
”,但我希望我能找到一些可以工作的东西,即使这些东西是通过某些配置设置更改的。(理想情况下,只有一个
viewBuilder->absoluteTemplatePath()
或类似的东西。)

您可以通过
App::path()
检索可能的模板路径

如果您想为
用户
插件检索模板路径,那么您可以这样做

$templatesPath = current(\Cake\Core\App::path('Template', 'Users'));
这会给你一些

/usr/local/var/www/mysite/vendor/vendorname/users/src/Template/
应该注意的是,这个方法不一定只返回一个路径,但是对于插件模板也是如此

如果需要实际文件的路径,则必须自行连接其余的路径段

另见