Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 设计-如何翻译自动生成的链接_Ruby On Rails_Ruby_Devise_Ruby On Rails 4_Devise Confirmable - Fatal编程技术网

Ruby on rails 设计-如何翻译自动生成的链接

Ruby on rails 设计-如何翻译自动生成的链接,ruby-on-rails,ruby,devise,ruby-on-rails-4,devise-confirmable,Ruby On Rails,Ruby,Devise,Ruby On Rails 4,Devise Confirmable,我正在完成我网站的不同本地化,我在设计电子邮件模板时遇到了一个小问题 例如,在确认电子邮件中,我已经翻译了所有内容,但确认帐户的链接是使用以下代码段自动生成的: <%= link_to t('devise.mailer.confirmation_instructions.confirm_link'), confirmation_url(@resource, :confirmation_token => @token) %> 或 但在这种情况下,我不知道我该怎么做 有什么建议吗

我正在完成我网站的不同本地化,我在设计电子邮件模板时遇到了一个小问题

例如,在确认电子邮件中,我已经翻译了所有内容,但确认帐户的链接是使用以下代码段自动生成的:

<%= link_to t('devise.mailer.confirmation_instructions.confirm_link'), confirmation_url(@resource, :confirmation_token => @token) %>

但在这种情况下,我不知道我该怎么做

有什么建议吗


谢谢。

您可以将:host参数添加到确认url(@resource,:confirmation\u token=>@token),并在翻译表中查找正确的主机:

confirmation_url(@resource, :confirmation_token => @token, host: t('host'))
在yaml文件中,您可以“翻译”用户语言的正确主机,如

en:
  host: 'www.example.com'

您是否以某种方式为用户存储当前语言设置?您可以将
:host
参数传递给
url
帮助程序。我在用户表中有一列,用于存储用户的浏览器语言。我如何通过:主机参数@令牌,:host=>'www.example.com')%>这样吗?
confirmation_url(@resource, :confirmation_token => @token, host: t('host'))
en:
  host: 'www.example.com'