この質問がクローズされる可能性があることは承知していますが、jQuery、AJAX リクエスト、または基本的なフレームワーク設計で検索機能のどの部分を実装する必要があるかを判断するのに本当に苦労しています。
一般的に、私が検討している 3 つのタスクは、新しい検索クエリの実行、フィルター/並べ替えの適用、ページネーションです。現在、これらの機能はすべて Django (私が使用しているフレームワーク) によって処理されていますが、このアプローチは遅く、柔軟性に欠けていることがわかりました。これには、サイトの JavaScript 側を実際に移動する必要がある部分があることは認識していますが、どこを区別するかを決めるのに苦労しており、ガイドとして役立つ一連の Web 標準があるかどうか疑問に思っています。
検索クエリの実行: 基本的にここで行うことは、いくつかのフォームで値を収集し、JSON オブジェクトを REST API に POST して、結果を JSON として取得することだけです。
フィルター/並べ替え: 少し異なるエンドポイントで同じ REST API に対して新しい AJAX 呼び出しを行うか、JSON オブジェクトのデータに基づいて結果の古いリストをフィルター処理することで、フィルター処理を行うことができました。並べ替えについては、現在、さまざまな方法でデータを並べ替える Python モジュールがありますが、これには、並べ替えごとに新しい get 要求が必要であり、ロジックは十分に単純であるため、Javascript に簡単に移行できます。
ページネーション: ここでは 1 つの変更を加えたかなり標準的なものです。つまり、別の AJAX 呼び出しを行うことでページネーションを実装できる可能性があります。使用している REST API を使用すると、返したい回答の正確な境界を定義できるためです。非標準のソートを使用すると、実際には機能しません。現在、私は動作するDjangoのページネーションを使用していますが、ページネーションにjQueryソリューションを使用すると、アプリではるかに軽くなるように感じます。
回答が部分的に意見に基づいていることは承知していますが、セキュリティの問題、パフォーマンス、または Web 標準からの重大な逸脱など、これらのオプションのいくつかを他のオプションよりも選択する必要がある具体的な理由を実際に探しています。