Symfony1 如何更改symfony管理筛选器的选项

Symfony1 如何更改symfony管理筛选器的选项,symfony1,symfony-1.4,Symfony1,Symfony 1.4,我有一个名为ImportBundle的表/类ImportBundle有一个active标志,可以设置为1或0 在我的一个管理页面上,我有一个select字段,显示数据库中的所有ImportBundles。我只想看活动的 如何更改此选项?是否要更改默认活动值、删除活动字段或更改基本查询 设置默认值 将getFilterDefaults方法添加到ImportBundleGeneratorConfiguration: public function getFilterDefaults() { re

我有一个名为
ImportBundle
的表/类
ImportBundle
有一个
active
标志,可以设置为1或0

在我的一个管理页面上,我有一个select字段,显示数据库中的所有
ImportBundle
s。我只想看活动的


如何更改此选项?

是否要更改默认活动值、删除活动字段或更改基本查询

设置默认值

getFilterDefaults
方法添加到
ImportBundleGeneratorConfiguration

public function getFilterDefaults()
{
  return array('active' => true);
}
删除该字段

ImportBundleFormFilter
中的过滤器中取消设置字段,或者更改
filter
generator.yml标题下的
display
选项。如果在其他地方使用了
ImportBundleFormFilter
,则可能需要对其进行扩展以取消设置字段

更改查询


在generator.yml中或在过滤器本身上设置
table_method
选项。请参阅更多说明。

是否要更改默认活动值、删除活动字段或更改基本查询

设置默认值

getFilterDefaults
方法添加到
ImportBundleGeneratorConfiguration

public function getFilterDefaults()
{
  return array('active' => true);
}
删除该字段

ImportBundleFormFilter
中的过滤器中取消设置字段,或者更改
filter
generator.yml标题下的
display
选项。如果在其他地方使用了
ImportBundleFormFilter
,则可能需要对其进行扩展以取消设置字段

更改查询


在generator.yml中或在过滤器本身上设置
table_method
选项。请参阅更多说明。

如果选择字段是sfWidgetFormDoctrineChoice,则应设置table\u方法选项

例如,如果您的模型与相关的多对多关系:

class ModelFormFilter extends BaseModelFormFilter
{
  public function configure()
  {
    $this->getWidget('related_list')->setOption('table_method', 'getActive');
  }
}

class RelatedTable extends Doctrine_Table
{  
  public function getActive()
  {
    return $this->createQuery('r')
      ->where('r.is_active = ?', true)
      ->execute();
  }
}

如果选择字段是sfWidgetFormDoctrineChoice,则应设置table_方法选项

例如,如果您的模型与相关的多对多关系:

class ModelFormFilter extends BaseModelFormFilter
{
  public function configure()
  {
    $this->getWidget('related_list')->setOption('table_method', 'getActive');
  }
}

class RelatedTable extends Doctrine_Table
{  
  public function getActive()
  {
    return $this->createQuery('r')
      ->where('r.is_active = ?', true)
      ->execute();
  }
}

实际上,我并没有试图设置任何类型的默认筛选条件或删除任何筛选器字段。我正在尝试更改我的一个字段中显示的选项,以便只看到
ImportBundle
s,其中
import\u bundle.active=1
。(有大量不活动的导入捆绑包将选择字段弄得乱七八糟。)编辑后也添加了相应的答案。好的,谢谢。你能给我说清楚吗?我很难理解我需要做什么。实际上,我并没有试图设置任何类型的默认筛选条件或删除任何筛选字段。我正在尝试更改我的一个字段中显示的选项,以便只看到
ImportBundle
s,其中
import\u bundle.active=1
。(有大量不活动的导入捆绑包将选择字段弄得乱七八糟。)编辑后也添加了相应的答案。好的,谢谢。你能给我说清楚吗?我很难理解我需要做什么。您的选择字段是模型表单还是筛选表单的一部分?(忽略它,在你的问题中没有注意到过滤器)你的选择字段是模型表单还是过滤器表单的一部分?(忽略它,在你的问题中没有注意到过滤器)这正是我想要的。谢谢。那正是我想要的。谢谢