2016-12-02 16 views
1

私はウェブサイトをダイナミックで、ページのリロードはできるだけ少なくしようとしていますが、AJAXで部分的なビューを楽しむようになりました。 GETまたはPOST。しかし、(私は一般的にはMVCに新しいです)私は疑問に思って始めた - これは正しいアプローチです。MVCでの部分的なビューの正しい使い方

は、与えられたシナリオがあります言ってやるがいい。

私は、テーブルを持って、このテーブルの上に私はボタン「詳細を表示」を持っています。ユーザーがこのボタンをクリックすると、サーバーから情報を取得してモーダルウィンドウに表示する必要があります。

私は、次のいずれかを行うことができます:

  • は、モデルから詳細に部分的なビューを作成しますAJAXは、ボタンのクリックで、そこからフォームを取得し、モーダルウィンドウ内に配置することがGETを実行します。
  • 必要な情報を含むJSONを返すアクションを作成し、AJAXを使用してそれを取得し、それにモーダルフォームを設定します。

どちらのアプローチが正しいでしょうか?

答えて

1

私は常にAJAXアクションで部分ビューを使用します。正直言っておいてください - バックエンドのパフォーマンスを考え始めるには、大きなHTMLを知っていません。

どちらの場合も、HTMLまたはJSONのいずれかのテキストが返されます。しかし、それらの値をデータベース(または取得している場所)から取得するには、同じパフォーマンスが必要です。

さらに、文字列を連結し、フロントエンドでそれをHTMLにすることは基本的なアプローチではなく、本当に特別な場所で使用する必要があります。

1

あなたの質問は、実際に意見に基づいています。しかし、私はそれが状況に依存していると言うことができます。

高性能のBackEndがある場合は、コントローラで表示してhtmlを返す方がよいでしょう。たとえばIE 8のようなレガシーブラウザで作業する場合は、これが最適です。あなたが高もパフォーマンスのバックエンドを持っていない場合は

- あなたはjsonまたはxml、その後はあなたが必要とするmakupにするために、JSのテンプレートを使用して返すことができます。

+1

「高性能」もユーザー負荷の影響を受けることを忘れないでください。また、パラメータの変更など、考慮するキャッシングもあります。この意見ベースだけでなく、あまりにも広すぎます。 – krillgar

+1

@krillgar私はそれのすべての言葉を意味した –

関連する問題