使用条令模型自动完成NetBeans?

使用条令模型自动完成NetBeans?,netbeans,symfony1,doctrine,phpdoc,doctrine-1.2,Netbeans,Symfony1,Doctrine,Phpdoc,Doctrine 1.2,我知道,通过执行以下操作,可以从条令中的*表类获得IDE自动完成: SomethingTable::getInstance()-><autocomplete>; $somethings = Doctrine_Query::create() ->from('Something s') ->leftJoin('s.SomethingElse s2') ->where(

我知道,通过执行以下操作,可以从条令中的*表类获得IDE自动完成:

SomethingTable::getInstance()-><autocomplete>;
$somethings = Doctrine_Query::create()
                ->from('Something s')
                ->leftJoin('s.SomethingElse s2')
                ->where(...);
顺便说一句,如果不清楚的话,我想问的是,是否有任何自动解决方案,可以使用各种各样的理论来查找、获取或查询语法。我不是在问如何手动编辑所有PHPdoc头以产生我想要的行为


我将NetBeans 6.9.1和Symfony 1.4.12与条令一起使用,但并非所有在同一代码上工作的人都使用NetBeans。

在NetBeans中,它非常简单:

$foo = ModelNameTable::getInstance()->find(1); /* @var $foo ModelName */

/*@var$foo ModelName*/告诉netbeans将变量$foo作为ModelName类处理。

在netbeans中,它非常简单:

$foo = ModelNameTable::getInstance()->find(1); /* @var $foo ModelName */

/*@var$foo ModelName*/告诉netbeans将变量$foo作为ModelName类处理。

只需通过添加

/**
 * @return ModelNameTable
 */
在getInstance方法的注释中。这将为模型文件提供自动完成功能。 关于find方法,您可以如下编辑类的注释:

/**
 * @method ModelName find()
 */
我认为您可以通过创建自己的骨架文件来自动完成这项工作。 或否:


您可以使用sed来实现这一点,或者使用反射api构建您自己的任务。

只需通过添加

/**
 * @return ModelNameTable
 */
在getInstance方法的注释中。这将为模型文件提供自动完成功能。 关于find方法,您可以如下编辑类的注释:

/**
 * @method ModelName find()
 */
我认为您可以通过创建自己的骨架文件来自动完成这项工作。 或否:


您可以使用sed来实现这一点,也可以使用反射api构建自己的任务。

问题在于,自动生成的*表类在getInstance方法中具有错误的phpdoc@return:

/**
 * Returns an instance of this class.
 *
 * @return object MyModelTable
 */
 public static function getInstance()
 {
     return Doctrine_Core::getTable('MyModel');
 }
您只需手动修复删除word对象的@return行:

 * @return MyModelTable
神奇的是,IDE自动完成功能可以正常工作,为您提供所有实例和静态方法:

MyModelable::getInstance()->... //(you'll have autocompletion here)

我知道,手动修复这个问题很痛苦,但至少每个model*表文件只需执行一次。

问题是自动生成的*表类在getInstance方法中的phpdoc@return错误:

/**
 * Returns an instance of this class.
 *
 * @return object MyModelTable
 */
 public static function getInstance()
 {
     return Doctrine_Core::getTable('MyModel');
 }
您只需手动修复删除word对象的@return行:

 * @return MyModelTable
神奇的是,IDE自动完成功能可以正常工作,为您提供所有实例和静态方法:

MyModelable::getInstance()->... //(you'll have autocompletion here)

我知道,手动修复是一件痛苦的事情,但至少对每个model*表文件只需执行一次。

虽然这是一个潜在的有用的难题,但由于几乎在任何地方都需要执行,因此它受到了极大的影响。我正在寻找一种解决方案,可以在最常见的条令情况下解决这个问题,而不需要像这样进行大量的编辑。条令中有太多的魔力,因为这可能非常简单。虽然这是一个潜在的有用的难题,但它因几乎在任何地方都需要这样做而受到极大的影响。我正在寻找一种解决方案,它可以修复最常见的条令情况,而不需要像这样进行大量编辑。条令中有太多的魔力,因为这可能很容易。