Coldfusion8/MySql サイトを「スパゲッティからオブジェクトへ」(= ビュー、コントローラー、プロセスを分離 - フレームワークなし、すべて Jquery Mobile で処理) からかなり複雑な検索で更新しています。
Jquery-AJAX を介して検索クエリを実行する必要があり、データベース クエリを実行する searchProcess.cfc に検索フォームを投稿しています。
質問:
結果を表示する場所がわかりません。
結果はかなり複雑になり (数百万レコードのデータベース、40 フィールドの行)、単一の結果レイアウトまたは複数の結果レイアウト ファイルになるはずです。
私は cfc 内にファイルを構築し、cfsavecontentを介してそれらを返すことを考えていましたが、どこでも読んでいますが、これはノーノーです...
その場合、代替手段は何ですか?
template_single.cfmとtemplate_multi.cfmを設定し、純粋な検索結果を AJAX 応答として返し、成功ハンドラーから別の AJAX 呼び出しを起動してテンプレートを呼び出し、この 2 回目の呼び出しの出力をレンダリングすることができます。これは非常に複雑に思えます。さらに、大きなデータセットを渡さなければ、ページネーションをどこに収めることができるかわかりません。
オブジェクト指向の方法で検索結果を処理する方法についてのアドバイスを探していますか?
ご意見ありがとうございます。
編集:
さらに数時間グーグルで調べた後、現在次のオプションを検討しています:
1.)単一のデータベースクエリを実行して、ページ分割された結果を返します-ここ
のように
2.)0〜25レコードのデータをAJAXに送り返しますJSON
3.) ループでテンプレート cf/js を使用しようとしています (長さ 1 または長さ 25) -こちらのとおり
これは、JSON の 1 ~ 25 個の生レコードのみのデータ転送を意味します。成功ハンドラーでレンダリングしようとすると、別のテンプレートを http リクエストする必要はありません。
このアプローチは理にかなっていますか?