Symfony 1.4 - 如何在table_method中使用后端过滤器?

时间:2012-09-21 12:27:04

标签: php symfony1 symfony-1.4 filtering

我想在table_method中使用自定义过滤器来扩展查询。不幸的是,我不知道如何从方法中访问字段的值。我正在使用SF 1.4 / w Doctrine 1.2

1 个答案:

答案 0 :(得分:1)

我认为您必须更改doBuildQuery filterForm方法。

在任何filterForm类中,您都可以:

public doBuildQuery(array $values) {
    $q = parent::doBuildQuery($values);

    if($values['....']) ... {
       $q->addWhere($q->getRootAlias().".column = ?",$values['...']);
    }

    return $q; 
}

这种方法是从后端生成的模块自动调用的方法。如果要添加另一个小部件,请在configure()方法中执行,然后在doBuildQuery()中处理该值。