CakePHP视图更改扩展
如何将CakePHP视图的扩展名从.ctp更改为.php 我在/cake/libs/view.phpCakePHP视图更改扩展,cakephp,Cakephp,如何将CakePHP视图的扩展名从.ctp更改为.php 我在/cake/libs/view.phpvar$ext='.ctp'中看到了这一行设置扩展名,但如何从我的/app/文件夹中设置扩展名,以免影响核心文件 谢谢您可以在AppController中使用 public $ext = '.yourext'; 鉴于cakephp不允许您指定多个扩展,这是对Cameron关于使用多个扩展的评论的回复 我使用的是一个站点,它在站点的不同部分使用merb、rails2、rails3和cakephp。
var$ext='.ctp'中看到了这一行
设置扩展名,但如何从我的/app/文件夹中设置扩展名,以免影响核心文件
谢谢您可以在
AppController
中使用
public $ext = '.yourext';
鉴于cakephp不允许您指定多个扩展,这是对Cameron关于使用多个扩展的评论的回复 我使用的是一个站点,它在站点的不同部分使用merb、rails2、rails3和cakephp。蛋糕网站“接收”常见布局元素的小胡子文件,但这些模板具有“.mustache”文件扩展名,我的蛋糕网站无法识别。我的解决方法基本上是DHOFSET建议的,只是在您的特定用例的上下文中加以阐述。简言之,创建一个类似以下内容的包装器:
<?
$tmp = $this->ext;
$this->ext = '.mustache';
?>
<?= $m->render($this->renderElement('moznav/advanced_header'), array('foo' => $bar)) ?><br />
<? $this->ext = $tmp; ?>
当流返回到调用方时,您将继续使用本机文件扩展名
如何将CakePHP视图的扩展名从.ctp更改为.php
我在/cake/libs/view.php var$ext中看到了这一行=
“.ctp”;这设置了扩展名,但我如何从我的/应用程序执行此操作/
文件夹,使其不会影响核心文件
例如:
- 您有查看
posts/add.ctp
- 现在将
重命名为add.ctp
add.php
- 然后运行
消息错误显示: 错误:找不到PostsController::add()的视图 为了让您的应用程序能够理解扩展名../posts/add
,您可以在.php
中添加行publicPostsController.php
$ext='.php'
- 现在,再次运行。
=>OK,cakephp了解扩展.posts/add
.php
注意:如果您使用一个属性
$ext='.php'
但文件视图名为.ctp
,cakephp扩展名。默认情况下,ctp
将使用我找到这篇文章,因为我遇到了同样的问题。Github上的TwigView插件文档中没有提到这一点。我厌倦了那些只解释了一半事情的文档,我们不得不猜测下半部分。这是对时间的极大浪费,毫无意义地减慢了项目的进度 那么像accept.php和.ctp这样的多个扩展名呢?可能吗?您不能指定多个扩展名,但是如果找不到.php文件,似乎会返回到.ctp。不过,这对元素不起作用(我为此问题开了一张罚单)。