0

私は、e コマース Web サイトの複数のサブドメイン機能の作成に取り組んできました。これまでのところ、すべてのユーザーに「:subdomain」属性を割り当てて、「subdomain.example.com」のようにサイトを表示できるようにしました。

しかし、「root_path」が「example.com」ではなく「subdomain.example.com」につながるため、「subdomain.example.com」から「example.com」に戻ることができません。

routes.rb ファイル:

constraints(Subdomain) do
  match "/" => 'contributors#show'
end

root :to => "items#index"

サブドメイン クラスは、以下の「domains.rb」ファイルから取得されます。

class Subdomain
  def self.matches?(request)
    request.subdomain.present? && request.subdomain != "www"
  end
end

貢献者#ショー

<%= link_to 'Home', root_path # this leads to contributor#show. wanna make it to index#show. %>

どんな助けでも大歓迎です。ありがとう。

4

2 に答える 2

2

試しましたroot_url(:subdomain => false)か?これにより、サブドメインのリンクが削除され、必要なことが行われます。

于 2014-01-10T09:49:48.263 に答える
0

Rails は、routes.rb ファイルで定義された最初に一致するパスを取得します。サブドメインにいる場合、制約が一致し、「/」がルート パスとして一致します。"root :to => 'items#index'" を routes.rb ファイルの先頭に移動してみてください。

于 2013-09-12T09:54:11.530 に答える