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