私は管理ジェネレーターモジュールに取り組んでいます。ユーザーがフィルターを使用するまでアイテムリストを非表示にしたいと思います。フィルターフォームが送信されたかどうかを確認したいと思います。
indexSuccess.php
テンプレートでこれを確認できる変数はありますか?
私は管理ジェネレーターモジュールに取り組んでいます。ユーザーがフィルターを使用するまでアイテムリストを非表示にしたいと思います。フィルターフォームが送信されたかどうかを確認したいと思います。
indexSuccess.php
テンプレートでこれを確認できる変数はありますか?
ユーザーがフィルタを送信すると、フィルタはセッション内に保存されます。
したがって、テンプレートでは、セッションを呼び出して定義済みのフィルターにアクセスできます。デフォルト フィルターがない場合は、空の配列が返されます (sfOutputEscaperArrayDecorator
出力保護を使用している場合)。
モジュール名がcar
たとえばの場合、次を使用してテンプレート内でフィルターを取得できます。
$filters = $sf_user->getAttribute('car.filters', null, 'admin_module');
また、出力保護を使用する場合は、次のことができます。
$filters = sfOutputEscaper::unescape($sf_user->getAttribute('car.filters', null, 'admin_module'));
フィルターがない場合は、var_dump
(最初のソリューションを使用して) 次のような結果が得られます。
object(sfOutputEscaperArrayDecorator)[181]
private 'count' => int 0
protected 'value' =>
array
empty
protected 'escapingMethod' => string 'esc_specialchars' (length=16)
そして2番目:
array
empty
たとえば、いくつかのフィルターを定義すると、次のようになります。
array
'model' =>
array
'text' => string 'test' (length=4)
'updated_at' =>
array
'from' => null
'to' => null
'created_at' =>
array
'from' => null
'to' => null