根据Ruby on Rails指南(http://guides.rubyonrails.org/i18n.html#using-safe-html-translations),我需要做的就是在不调用html_safe
的情况下呈现我的翻译,就是让密钥名称以_html
结尾。这就是我试过的:
en:
breadcrumbs:
root_html: "<i class='material-icons'>home</i>"
这样称呼:
I18n.t('breadcrumbs.root_html')
导致输出是我在翻译中定义的字符串,而不是呈现的HTML。 我做错了什么?
使用Ruby on Rails 4.2.1。 提前谢谢!
答案 0 :(得分:2)
在指南中向下滚动一点我发现了问题:
只能从翻译视图助手方法中自动转换为HTML安全翻译文本。
由于我尝试在控制器中准备链接并将其通过gem传递给视图,因此无效。
要完成这项工作,您必须在字符串上调用html_safe
,如下所示:
I18n.t('breadcrumbs.root_html').html_safe
如果你找到另一个解决方案,请打我!