2

我目前正在使用Pow来管理我的 Rails 应用程序,并且 .dev 和 .test 都在运行。我想知道如何设置 .test 域以使用测试数据库而不是开发数据库。

基本上,我可以让 appname.dev 加载开发环境,而 appname.test 加载测试环境吗?

4

1 回答 1

1

您可能可以使用此 Gist的变体来确定正在访问的域,并让 Rails 应用程序从那时起相应地运行。

您将在应用程序控制器上添加一个 before_filter,session[:site]根据它是开发环境还是测试环境进行设置(也可以选择通过标准 Rails 服务器site=developmentsite=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 应用程序的内容。

于 2012-06-13T02:28:31.027 回答