使用翻译导轨时4.1设置数据值不正确

时间:2014-05-10 00:30:09

标签: ruby-on-rails ruby-on-rails-4 rails-i18n

我将一些翻译数据保存在DOM元素的data属性中。

<input type='button' id=admin-button data-add= <%=t :Add_Category%> data-save= <%=t :Save%> value= <%=t :Add_Category%> 

不幸的是,当翻译文件值有一个空格,例如Add_Category:&#34;添加类别&#34;

我得到了

data-add="Add" category=""

而不是

data-add="add category"

如果我这样做而没有中间的翻译,它就有效。

1 个答案:

答案 0 :(得分:1)

在erb标签周围加上双引号?或者更好地使用rails helpers,也许是button_tag

http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html#method-i-button_tag

<%= button_tag t(:add_category), 
  id: "admin-button",
  data: {
    add: t(:add_category),
    save: t(:save)
  }  
%>

如果您必须<button>,则会生成input type="button",这可能会有效

<%= content_tag :input, 
  t(:add_category), 
  type: "button",
  id: "admin-button",
  data: {
    add: t(:add_category),
    save: t(:save)
  }  
%>

http://api.rubyonrails.org/classes/ActionView/Helpers/TagHelper.html#method-i-content_tag

另外,我建议使用带有下划线的所有小写 - 即:add_category vs :Add_Category - 它更像是红宝石风格