私は2つの "クライアント"を持つRailsアプリケーションを持っています - iOSアプリケーションはJSONを読み書きし、HTMLを読み込むWebブラウザです。さまざまなコントローラクライアント(Web、iOS API)を扱うRailsの方法は何ですか?
「さまざまなブラウザ/クライアントで異なる出力が必要です」と言えば、異なるERBファイルを使用して、User-Agent
などに基づいてレンダリングすることができます。
このように、RailsはWebの世界で想像されました。私は "cap deploy"と入力し、すべての "インスタンス"を最新のバージョンにアップグレードします(アクティブセッションAJAX呼び出しを保存します)。
しかし、私は、異なるデータバージョン&クライアントアプリケーションのバージョンを扱うコードでは、ブロックif
ブロックに非常に慣れています。それは苦痛です(しかし、必要です)。
私は「私は魔法のように完全なデータ構造をバージョン1.0で考える」と言いたいのですが、おそらくそれは当てはまりません - &属性やモデルを時間がかかります。
私は、通常のHTML(上記につき、優雅にアップグレードすることができます)とそのバージョン管理ロジックのすべてをミックスしたくないので、私が考えた:
- は別のコントローラまたはちょうど作用を有します私のAPI用のAPIバージョン
の上の層としてHTML/Webバージョンを扱う「フォワーダ」を書くのiOS