Fu8*_*u86 42 html translation localization ruby-on-rails
我在我的Rails应用程序(config/locale/[en | de] .yml)中有一些翻译,我在我的视图中使用它<%=t "teasers.welcome" %>.例:
teasers:
welcome: "<strong>Welcome</strong> to the Website ..."
Run Code Online (Sandbox Code Playgroud)
在Rails 2.3.8中这很好用,使用Rails 3,HTML被转义并转换为<...如何防止这种形式的翻译并在我的翻译文件中使用HTML,如Rails 2.3.8?
Sim*_*tti 94
除了使用之外raw,还有其他无证(但官方)的方法.所有以#结尾的键都会_html自动呈现为非转义状态.
重命名密钥
teasers:
welcome: "<strong>Welcome</strong> to the Website ..."
Run Code Online (Sandbox Code Playgroud)
至
teasers:
welcome_html: "<strong>Welcome</strong> to the Website ..."
Run Code Online (Sandbox Code Playgroud)
mar*_*cgg 41
我想是因为这样做
<%= t("blah") %>
Run Code Online (Sandbox Code Playgroud)
在rails 2.x中,现在相当于做
<%=h t("blah") %>
Run Code Online (Sandbox Code Playgroud)
当你使用rails 3时.
从发行说明 s:
切换到默认的XSS转义为rails.
要解决这个问题,请再次从发行说明中解决:
您不再需要调用h(字符串)来转义HTML输出,默认情况下它在所有视图模板中都处于打开状态.如果你想要未转义的字符串,请调用raw(string).
所以只需更换
<%= t("blah") %>
Run Code Online (Sandbox Code Playgroud)
通过
<%= raw t("blah") %>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16214 次 |
| 最近记录: |