1

このRailscastに基づいたサブドメインを持つ現在のプロジェクトをセットアップしました。2 つのモデルがStateありCity、それぞれ:subdomainのデータセットにフィールドがあります。ユーザーがこれに一致するサブドメインを入力する:subdomainと、適切なコンテンツが表示されます。

StateまたはCityモデルにサブドメインが存在しない場合、リクエストをリダイレクトするにはどうすればよいですか? blue.domain.comたとえば、にリダイレクトしたいと思いrails_rootます。

要求されたドメインが存在しない場合にリダイレクトする方法について、誰かが少しガイダンスを提供できますか?

4

2 に答える 2

2

コントローラーの場合は、都市または州を見つける場所に before_filter を追加し、見つからない場合はリダイレクトします。何かのようなもの:

before_filter :find_subdomain

def find_subdomain
  @city_or_state = City.find_by_subdomain(request.subdomain) || State.find_by_subdomain(request.subdomain)
  redirect_to root_path(subdomain: false) if @city_or_state.nil?
end
于 2013-04-27T17:21:37.343 に答える
1

これは、同じことを行う別の方法です。

before_filter :find_subdomain

private
def find_subdomain
  @city_or_state = City.find_by_subdomain(request.subdomain) || State.find_by_subdomain(request.subdomain)
  redirect_to request.domain if @city_or_state.nil?
end
于 2013-04-30T17:48:55.943 に答える