2011-07-17 4 views
0

symfony 1.4でフィルタフィールドを否定を実装しています。 1テキスト入力と否定のための1チェックボックス。複数の要素を持つsymfonyフォームフィルタフィールドのロジック

私は

public function addXXXColumnQuery($query, $field, $value) 
{ 
    $v = $value['text']; 
    $n = 'negation_checkbox_true_or_false'; // don't know how? 

    if ($n === true) 
    { 
     $query->addWhere($query->getRootAlias().'.name = ?', $v); 
    } 
    else if ($n === false) 
    { 
     $query->addWhere($query->getRootAlias().'.name <> ?', $v); 
    } 
} 

以下のように入力値にアクセスすることができますが、私は、チェックボックスの値にアクセスする方法を見つけ出すことはできません。

sfWidgetFormInputFileEditableには、チェックボックスを表示する 'with_delete'オプションがあります。誰でも、その値をチェックしてファイルを削除するコードがどこにあるのか知っていますか?

私がそれを見つけることができれば、多分私はそれを理解することができます。

答えて

0

あなたはに設定with_deleteオプションでsfWidgetFormInputFileEditableを作成すると、ウィジェットは「_delete」接尾辞を持つファイルのアップロードウィジェットにちなんで命名された追加のチェックボックスをレンダリングします。 チェックボックスをオンにすると、sfWebRequestオブジェクトのsfParameterHolderには、チェックボックスウィジェットの後に名前が付けられたパラメータが含まれます。

したがって、「ファイル」という名前のsfWidgetFormInputFileEditableがあるとします。

$request->hasParameter('file_delete'); 
+0

私はあなたが行動でそれを処理すべきだと思うが、の 'にdoSave()'や 'はdoupdate()'アクションではありません:あなたのアクションでは、[削除]チェックボックスを使用してチェックされているかどうかを確認することができますフォーム。 –

+0

実装する動作に応じて、おそらくそれが良いでしょう。 – mgois

関連する問題