0

状況: Drupal で Views モジュールを使用すると、検索フォームと結果を同じページに表示するように制限されます。

例:ページ A = (検索フォーム + 結果) .

ビュー モジュール インターフェイスには、検索フォームを別のページに移動/コピーするオプションがありません。例:ページ A = 検索フォーム、ページ B = 結果フォーム

質問:サイトのフロント ページに別のフィルター (検索) フォームがあり、このフォームが検索パラメーターを実際のビュー ページ (結果を表示する)に送信する場合、ビュー アーキテクチャによって許可されますか?

私の当初の目標は、最初のページで単純な検索を行い、結果が表示されることでした.2番目のページに高度な検索フォームを表示します。

当然、ビューがそれらを理解できるように、最初のカスタム フォームに元のフィルター フォームと同じフィールドを持たせるつもりです。

それは典型的な/受け入れられた解決策ですか?

4

2 に答える 2

3

簡潔な答え

これは、ViewsのExposed form in block設定で自動化されています。

より長い答え

ビュー内から実行する場合は、[基本設定] の下の [ブロックで公開されたフォーム] を [はい] に設定します。これにより、公開されたすべてのフィルター フォームを含むブロックが作成されます。ブロックとして、表示する地域とページを定義できます。

ブロック内のフォームは、公開フィルターで定義したフォーム要素によって設定されたクエリ文字列を使用して、ページ ビューの URL に GET 要求を送信します。

たとえば、ノード タイトルで公開検索を作成し、「タイトル」の既定のフィルター識別子を保持する場合、いつでも投稿する独自のフォームを作成できます/searchview?title=blah。私自身、ブロックシステムに固執します。

于 2009-10-28T18:04:44.240 に答える
0

おっしゃっている意味がよくわかりません。

データを別のページに送信する検索フォームは、MVC パターンと完全に互換性があります。ただし、関心を分離しておく限り (モデルでのデータベースの相互作用、コントローラーでのデータ操作、ビューでの html)。

于 2009-10-28T13:36:28.480 に答える