0

Rails3.2のルートドメインに戻ってサブドメインを終了するのに苦労しています。

ダッシュボード付きのブログがあるとします。各ユーザーには、にサブドメインがありusername.blog.comます。各ユーザーには、にダッシュボードもありますblog.com/dashboard

ユーザーが手動で入力する場合はusername.blog.com/dashboard、にリダイレクトする必要がありblog.com/dashboardます。

subdomain => falseルートで使ってみましたが、役に立たないようです。ドメインスコープの下でマッチャーも試しましたが、それも機能しませんでした。どんな助けでも大歓迎です!

関連するroutes.rbが続きます。

resource :dashboard, :controller => 'dashboard', :subdomain => false
scope '/', constraints: lambda { |r| r.subdomain.present? && r.subdomain != 'www' } do
    get '/' => 'feed#show'
  end

root :to => 'dashboard#show', :subdomain => false
4

1 に答える 1

1

そのロジックはルーティングの外に置いておきます。ビュー/コントローラーで、dashboard_path の代わりに dashboard_url を使用します。私は ApplicationController にこのようなものを入れます

def dashboard_url(options={})
  options[:subdomain] = false
  super(options)
end
于 2012-05-15T05:26:50.937 に答える