2011-12-09 9 views
8

私は、jsonを送信してからクライアント側で解析するか(例えばpure)、どうすればよいのでしょうか?サーバー側でjavascriptをレンダリングし、結果を返します(js.erbテンプレートを使用)?Ruby on Rails、json vs js ajaxレスポンス

答えて

7

js.erbテンプレートを使用すると、テンプレートがよりシンプルになり、アプリケーションロジックをRailsコントローラに保持することができます。従来のアプリケーションでは、javascriptでアプリケーションロジックがほとんどまたはまったく処理されないため、これは良いことです。

一方、JSONを使用すると、Javascriptの重いクライアントアプリケーション用のAPIサーバーとしてRailsアプリケーションを開発することをお勧めします。コアCRUDアクションをajaxで行い、ページをめったにリロードしたくない場合は、おそらくアプリケーションのスタイルに適しています。

特定の状況で最適なのは、作成するアプリケーションの種類と特定の要求の属性の両方によって異なります。

+0

+1のJSON応答は、ビューのAPIとしてコントローラを使用します。このようにすると、コントローラのコードからビューロジック(DOMを操作する)が切り離されます。 – Nick

関連する問題