0

我想根据登录用户过滤 SF-1.4 后端模块中选择框的选项。修改/扩展 SQL 查询(即创建 SELECT-Box)的正确位置在哪里?

4

1 回答 1

2

只需覆盖表单过滤器类中该选择框的小部件/验证器。我可以为您提供更多信息,但我需要知道您使用的是什么 ORM。


sfWidgetFormDoctrineChoice 和 sfValidatorDoctrineChoice 都有一个名为 的选项query。使用它并设置您的自定义查询。所以你需要在你的过滤器类中做这样的事情:

$query = Doctrine::getTable('Table')->createQuery()->where('field = ?', $field_value);

$this->widgetSchema['your_form_field']->setOption('query', $query);

$this->validatorSchema['your_form_field']->setOption('query', $query);

`

于 2012-09-20T16:17:13.123 回答