加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

IDE中CakePHP的代码完成

发布时间:2020-12-13 16:21:54 所属栏目:PHP教程 来源:网络整理
导读:有人建议我“使用代码完成”,我意识到虽然我的IDE已完成代码,但它无法识别从Cake PHP框架继承的大多数方法和变量,最值得注意的是视图的Helper方法.我正在使用PhpED,但似乎它的代码完成应该像在eclipse和其他编辑器中一样工作. 我遵循this建议无济于事;我创建
有人建议我“使用代码完成”,我意识到虽然我的IDE已完成代码,但它无法识别从Cake PHP框架继承的大多数方法和变量,最值得注意的是视图的Helper方法.我正在使用PhpED,但似乎它的代码完成应该像在eclipse和其他编辑器中一样工作.

我遵循this建议无济于事;我创建了一个helpers.php文件,其中包含所有帮助程序的定义,并将其包含在项目中,但代码完成仍然无法与Helpers一起使用.

我认为问题的一部分是Mark Story的帖子来自旧版本的蛋糕(我在Cake 1.3上)所以我更新了Helpers的定义,如下所示:

$this->Form = new FormHelper();

但是任何视图仍然没有代码完成.有没有办法让这项工作?除了Helpers之外,我真的很想完成Model-> find()这样的功能,但那些也不起作用.

解决方法

对于PhpED,您必须执行以下操作才能为$this启用自动完成功能.

假设你想在Controller中使用$this来做这样的事情

$this->Project->Country->getCountryName($countryId)

首先在类定义之前添加此PhpDoc标记

/**
* @property-read Project $Project
*/
class ProjectsController....

现在输入$this-> Project应按预期工作.
接下来是Project模型类.

在这里,在类定义之前再次添加以下代码

/**
* @property-read Country $Country
*/
class Project extends AppModel

现在$this-> Project-> Country-> getCountryName($countryId)有效.该方法不是我想要的100%,因为PhpEDs Autocompletion按字母顺序排序,因此任何以A或B开头的类都将在Country模式的方法之前显示.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读