2012-03-28 106 views
-1

我更改了我的评论模块中的生成器,以便默认列出的结果不同。我只加了“table_method”值:Symfony - 管理生成器过滤器

list: 
    table_method: commentParent 

然后,我添加了commentParent功能是这样的:

public function commentParent(Doctrine_Query $q) { 
    $rootAlias = $q->getRootAlias(); 

    $q->where($rootAlias . '.parent_id is null or ' . $rootAlias . '.parent_id = 0'); 

    return $q; 
} 

列出的结果是正确的,但使用这种方法,现在过滤器将不能正常工作。在开发模式下,我可以看到它们在用户变量中正确设置,但它们没有效果。

我可能会错过什么?

回答

0

使用addWhere而不是where,因为它(where)删除所有以前添加的where子句。