使用工厂类时的代码完成

时间:2014-06-12 16:03:12

标签: php symfony netbeans phpdoc code-completion

我正在使用Netbeans 8进行Symfony2项目 我为我的模型查询创建了一个工厂类(它们是静态调用和混乱测试) E.g

<?php
namespace My\Custom\Bundle\Classes\Factories;

use My\Custom\Bundle\Model\UserQuery;

class QueryFactory
{
    /**
     * Class name
     * @access public
     */
    const CLASS_NAME = __CLASS__;

    /**
     * newUserQuery()
     *
     * Creates a new user query object.
     * @access public
     * @return My\Custom\Bundle\Model\UserQuery
     */
    public function newUserQuery()
    {
        return UserQuery::create();
    }
}

我想要的是自动完成处理从工厂方法创建的变量(在本例中是用户查询的Propel方法)。

<?php
namespace My\Custom\Bundle\Controller;

use My\Custom\Bundle\Classes\Factories\QueryFactory;

class ReportingController
{
    private $queryFactory;

    public function __construct(QueryFactory $query_factory)
    {
        $this->queryFactory = $query_factory;
    }

    public function fubar()
    {
        $user = $this->queryFactory->newUserQuery();
        // now want auto complete on the $user (in this case the propel methods)
        // $user->filterById(1);
    }
}

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我认为问题是@return指向My \ Custom \ Bundle \ Classes \ Factories \ My \ Custom \ Bundle \ Model \ UserQuery

尝试将其更改为此

/**
* ...
* @return UserQuery
*/

没有use语句,它应该是这样的

/**
 * ...
 * @return \My\Custom\Bundle\Model\UserQuery
 */