1

同じアプリケーションに対して 3 つの異なるビューのユーザビリティ テストを行う必要がある Rails アプリケーションを構築しています。私の考えは、サブドメインに応じてデフォルトのビュー パスを切り替えることです。

たとえば、次のようなパスを定義できるようにしたいと思います。

option1.mysite.com => views/option_1
option2.mysite.com => views/option_2
option3.mysite.com => views/option_3

モデルとコントローラーを同じに保ちたいのですが、サブドメインに応じてビューを切り替えます。これを行う最良の方法は何ですか?

4

1 に答える 1

1

次のようにします。

session[:site] = case request.subdomains.last 
        when "a" then "a"
        when "b" then "b"
        when "c" then "c"
end

set_siteこれは、アプリケーション コントローラーのメソッドの一部です。session[:site]すべてのリクエストで が設定されているかどうかがチェックされます。set_siteそうでない場合は、それを設定するために呼び出します。

あなたの場合、ビューにロジックを導入して の値に応じて物事を異なる方法で提示する必要がありますがsession[:site]、実際のビュー HTML が同じであり、主な違いが CSS にある場合はさらに優れています。次に、 の値に応じて異なる CSS ファイルをロードしますsession[:site]

于 2010-11-16T00:58:41.993 に答える