gpt4 book ai didi

ruby-on-rails - Rails 3.1 Multi-Tenancy 路由

转载 作者:行者123 更新时间:2023-12-04 05:20:49 24 4
gpt4 key购买 nike

我有一个 Rails 3.1 Multi-Tenancy 应用程序,其中包含一个名为 mydomain.com 的域。有了这个,我想创建以下路线,但继续前进

www.mydomain.com 和 mydomain.com 的默认根目录应该转到名为 home 或类似的 Controller
*.mydomain.com 的默认根目录(www 除外)应该转到 session /新路由
登录时 *.mydomain.com 的默认根目录(www 除外)将转到仪表板 Controller 或类似

任何人都可以帮助实现这一目标吗?

最佳答案

这与您要查找的内容非常相似:http://maxresponsemedia.com/rails/setting-up-user-subdomains-in-rails-3/ .

编辑

看起来链接现在已经死了(这就是为什么我们应该发布更多的不仅仅是链接!),但我能够在 WayBackMachine 中找到它。这是它的代码示例。

首先,我们为子域和根域定义了几个约束:

# /lib/domains.rb

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

class RootDomain
@subdomains = ["www"]

def self.matches?(request)
@subdomains.include?(request.subdomain) || request.subdomain.blank?
end
end

然后,在我们的 routes.rb 中,我们将子域定向到网站 Controller ,但对与主站点相关的域的任何请求都会发送到为应用程序配置的静态页面。
# config/routes.rb
# a bunch of other routes...

# requiring the /lib/domains.rb file we created
require 'domains'

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

constraints(RootDomain) do
match '/contact_us', :to => 'static_pages#contact'
match '/about', :to => 'static_pages#about'
match '/help', :to => 'static_pages#help'
match '/news', :to => 'static_pages#news'
match '/admin', :to => 'admin#index'
end

关于ruby-on-rails - Rails 3.1 Multi-Tenancy 路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13717838/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com