ruby-on-rails - 如何从 URL 中删除子域?

标签 ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

我按照 Railscast 将子域添加到 Rails 应用程序,here , 一切都与子域一起工作。现在,如果请求的子域不存在,我只是想不出一种方法来链接回没有子域的根域。

我尝试将以下内容添加到我的 application_controller.rb 文件

redirect_to root_path(subdomain: false) if @city_or_state.nil?

其中 @city_or_state 确定请求的子域是否有效。 redirect_to 返回到根目录,但不会删除子域。

例如,如果用户尝试访问 invalid.domain.com,他们将被重定向到根目录,但不会删除子域。

我正在尝试让 invalid.domain.com 重定向到 domain.com

最佳答案

好的,我知道了。我必须使用以下内容:redirect_to root_url(:host => request.domain)

当我尝试 root_path(:host => request.domain) 时,它不起作用。仅适用于 root_url

我在 Daniel Kehoe 的一些评论中找到了答案 here

当尝试访问不存在的域时,将从 URL 中删除无效的子域。

关于ruby-on-rails - 如何从 URL 中删除子域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16304201/

相关文章:

ruby-on-rails - 当模型具有另一个模型的一个或零个实例时,可以使用 has_one 关联吗?

ruby-on-rails - 在 Heroku 上使用 Prawn

ruby-on-rails-3 - 在Nginx + Unicorn上加载时出现严重的网关错误(Rails 3应用)

ruby-on-rails - 运行 rails server 时 Windows 上没有 Javascript 运行时

ruby-on-rails - 有没有办法在 Rails 控制台内的输出上实现类似 grep 的功能

ruby-on-rails - 复合模型名称问题

ruby-on-rails - 表单数据未通过 POST 以参数形式发送

ruby-on-rails - 如何在配置文件中使用Rails.root?

jquery-ui - Ruby on Rails 3.1 和 jQuery UI 图像

ruby-on-rails - Rails 3.1 Assets 管道没有缩小