【问题标题】:Changing view file extension -via cake bake更改视图文件扩展名 - 通过蛋糕烘焙
【发布时间】:2015-04-25 05:21:53
【问题描述】:

有没有办法改变cake bake view生成的视图文件的扩展名?目前,该任务生成.ctp 文件-而我想要.php

我尝试使用别名参数@ cake bake view MyController index "index.php",但是 CakePHP 认为我正在尝试加载一个名为“index”的插件: Error: Plugin index could not be found

显然,我可以手动或通过批处理脚本更改文件名。但是,最好让控制台执行此操作。

编辑: 通过回答Salines'关于我为什么要这样做的问题,我意识到这个问题更特定于IDE。我在这个答案中找到了我想要的东西:Display CTP Files as PHP Files in PHPStorm。也就是说,我仍然想知道是否/如何使用cake bake view 生成替代文件扩展名。

【问题讨论】:

  • 我们能知道您为什么要更改文件扩展名吗?您可以编写自己的控制台脚本并查看模板。
  • .ctp 无法被大多数(如果不是全部)IDE 和文本编辑器识别。在编辑 .ctp 文件时,我失去了代码格式/样式和自动完成功能。 cake bake 完成了 80% 的工作,但是由于上述工作流程问题,这 20% 被夸大了。通过使用.php,我重新获得了漂亮代码的力量。
  • Salines: 你的答案是写我自己的bake 脚本吗?

标签: cakephp cakephp-bake cake-console


【解决方案1】:

如何使用自定义扩展烘焙视图?

  1. 将文件夹 Command 和 Templates 从 cakephp\lib\Cake\Console 复制到 cakephp\app\Console
  2. 前往app\Console\Command\Task 打开ViewTask 文件,在代码中搜索.ctp 并替换为.php 扩展名,对TemplteTask 执行相同操作。
  3. 转到 app\Console\Templates\default\views,将表单、索引和视图文件的扩展名从 .ctp 更改为 .php。
  4. 进入app\Console\Templates\skel\View 找到所有的.ctp文件,改成.php
  5. 在您的 AppController.php 中设置 public $ext = '.php';
  6. 烘焙视图,从 app\Console 中选择

注意:您的 CakePHP 应用程序不会以标准方法制作,这可能会导致以后的升级变得困难。我没有使用带有自定义扩展的 cakephp 视图,但我会告诉你如何做。

【讨论】:

  • #2 正是我想要的。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-27
  • 1970-01-01
  • 2011-08-28
  • 1970-01-01
  • 2013-03-30
相关资源
最近更新 更多