我目前正在使用Pow管理我的Rails应用,同时运行.dev和.test。我想知道如何设置.test域来使用测试数据库而不是开发者。
基本上,我可以在加载开发环境的appname.dev和带测试环境的appname.test吗?
答案 0 :(得分:1)
您可以使用this Gist的变体来确定要访问的域,并让Rails应用程序从那时开始相应的行为。
您需要在Application Controller上添加一个before_filter,根据它是开发环境还是测试环境设置session[:site]
(可以选择从标准中传递site=development
或site=testing
Rails服务器也是如此。
以下是我认为上面链接的Gist的相关摘录:
session[:site] = case request.domain
when "appname.dev" then "development"
when "appname.test" then "testing"
else ENV['site'] || "development"
end
您的Rails应用程序的其余部分将根据session[:site]
的值运行。我还写了一些关于多站点Rails应用程序here的文章。