0

ログインしたユーザーに応じて、SF-1.4 バックエンド モジュールの選択ボックスのオプションをフィルター処理したいと考えています。SELECT ボックスを作成している SQL クエリを変更/拡張する適切な場所はどこですか?

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 に答える