编程语言
首页 > 编程语言> > IDE中CakePHP的代码完成

IDE中CakePHP的代码完成

作者:互联网

有人建议我“使用代码完成”,我意识到虽然我的IDE已完成代码,但它无法识别从CakePHP框架继承的大多数方法和变量,最值得注意的是视图的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模式的方法之前显示.

标签:php,ide,cakephp,cakephp-1-3
来源: https://codeday.me/bug/20190630/1337411.html