Ruby on rails 如何获取I18n子树条目?

Ruby on rails 如何获取I18n子树条目?,ruby-on-rails,internationalization,Ruby On Rails,Internationalization,将rails 3.0.9与ruby 1.9.2结合使用 我必须做一个包含口音和非标准字母的地方列表来填充一个选择框 使用助手不起作用,因为我已经搜索了它,因为我得到了以下错误: invalid multibyte char (US-ASCII) 它显然与ruby有关,而与rails无关 我还读到最好的解决方案是将列表放在翻译文件中,我也这样做了,但现在我无法检索列表 以前,我有: def madrid_area_array [ "Chapinería", "Ciempozu

将rails 3.0.9与ruby 1.9.2结合使用

我必须做一个包含口音和非标准字母的地方列表来填充一个选择框

使用助手不起作用,因为我已经搜索了它,因为我得到了以下错误:

invalid multibyte char (US-ASCII)
它显然与ruby有关,而与rails无关

我还读到最好的解决方案是将列表放在翻译文件中,我也这样做了,但现在我无法检索列表

以前,我有:

def madrid_area_array
  [
    "Chapinería",
    "Ciempozuelos",
    "Cobeña",
  ]
end
现在,我的.yml中有:

places:
  spain:
    madrid:
      chapin: "Chapinería"
      ciempo: "Ciempozuelos"
      cobena: "Cobeña"
当我使用助手以防有人怀疑时,符号如í;直接写在选择下拉框中,你不会得到“í”,我可以调用madrid_area_数组来填充选择菜单。现在,我无法调用翻译文件,必须生成一个具有翻译的中间帮助程序:

def madrid_area_array
  [
    t(:chapin, :scope => "spain.madrid", :locale => "places"),
    t(:ciempo, :scope => "spain.madrid", :locale => "places"),
    t(:cobena, :scope => "spain.madrid", :locale => "places")
  ]
end
有没有办法从翻译子树中获取所有条目?比如:

 t(*, :scope => "spain.madrid", :locale => "places")

你真的只是因为这个错误而试图将你的it应用国际化吗?在后一种情况下,您是否尝试将encoding:utf-8添加到您的文件顶部,如本问题所述@marcolinux我正在对我的应用程序进行国际化,尽管示例似乎与此不同,因为城市名称是通过不同的语言翻译的。我试图解决编码问题:另一方面,utf-8的问题,这是一个PITA,因为用utf-8字符在rails文件中写入它并不能解决它,我也不可能用补丁填充所有文件,因为ruby开发人员认为ASCII-US在全世界都被使用,这是值得称赞的