通过另一个 Rails-Engine 项目,我能够更好地处理约束。我试着把我以前的工作修改成这个。
我有一个在子域名下运行的应用程序,www/admin
受到限制,但客户可以使用其他所有内容。我用的更简单:
constraint => "www"
由于上述方法不适用于没有www
且只有example.com
的网址,因此我使用以下脚本:
我把文件放在app/constraints/frontend_router.rb
class FrontRouter
def self.matches?(request)
request.subdomain.present? && request.subdomain != "www" && request.subdomain != ENV['DEPLOYED_DOMAIN']
end
end
在路线文件的顶部,添加所需的文件。 www
似乎有效但example.com
(没有www
)却没有。
require 'frontend_router'
constraints(FrontRouter) do
# Landing Page
scope module: "website" do
root 'page#index'
end
end
答案 0 :(得分:0)
我正在使用的插件是路由所有内容。它可能会覆盖我试图做的事情。但我发现这是我最好的个人选择:正在使用引擎上的欢迎和分离的仪表板视图。
gem 'mtwarden', '~> 2.2'
如果其他人有更好的解决方案,我愿意尝试并测试。但这将完成我需要做的事情。