Ruby on rails 我可以使用HTML代码识别环境吗?

Ruby on rails 我可以使用HTML代码识别环境吗?,ruby-on-rails,ruby,html,ruby-on-rails-3.2,ruby-on-rails-4,Ruby On Rails,Ruby,Html,Ruby On Rails 3.2,Ruby On Rails 4,我刚刚了解了如何使用I18n在公用文件夹中创建自定义错误页。这些错误页面具有将用户返回到应用程序中某个页面(如主页)的链接 当我的应用程序运行3.2.13时,我在app文件夹中使用application.rb中的config.exceptions\u app=self.routes设置了自定义错误页面。当我有了这些代码后,我所要做的就是使用一个link_to语句,指向我希望用户返回的路线。如果我在开发环境中,它将转到http://localhost:3000/somelink在生产中,它将转到h

我刚刚了解了如何使用I18n在公用文件夹中创建自定义错误页。这些错误页面具有将用户返回到应用程序中某个页面(如主页)的链接

当我的应用程序运行3.2.13时,我在app文件夹中使用application.rb中的
config.exceptions\u app=self.routes
设置了自定义错误页面。当我有了这些代码后,我所要做的就是使用一个link_to语句,指向我希望用户返回的路线。如果我在开发环境中,它将转到
http://localhost:3000/somelink
在生产中,它将转到
http://myrailsapp.com/somelink
。在Rails 4中重写后,我将它们替换为公用文件夹中的,因为在Rails 4中似乎忽略了
config.exceptions\u app=self.routes

公用文件夹中的“我的错误”页面是html,而不是html.erb,因此没有ruby/rails代码。我想复制我以前在错误页面中检查环境的内容,并指向localhost进行开发或指向我的域URL进行生产。我当前的错误页面中有类似的代码:

<a href="http://myrailsapp.com/en/home">My Link Text</a>

我绝对愿意将这些文件更改为html.erb文件。我最初考虑过这一点,但从我的研究和尝试中,我发现Rails4没有任何效果

任何帮助都将不胜感激。

您不需要html中的任何“自动检测”,只需从url中剪切域部分,并使用本地路径即可

只需更改
http://myrailsapp.com/en/home
/en/home


是的,您确实需要将开头斜杠独立于链接中的当前url。

您可以更精确一点吗?您不能使用相对路径,而不是url吗?只需更改
http://myrailsapp.com/en/home
to
/en/home
Almaron,你的回答成功了。我忘记了斜杠,这会导致错误。非常感谢。我已更改了所有错误页面:)@Almaron,请添加您的解决方案作为答案,我将检查它。在我的Rails3应用程序中,我没有开始斜杠,一切正常。当我升级到Rails 4时,什么也没找到。现在我知道在Rails4中,HTML5代码需要斜杠开头。非常感谢。@LightBeCorp很乐意提供帮助)除了接受答案之外,别忘了给好答案投票)