我是 Rails 新手,正在尝试使用 I18n 将我的应用程序国际化。在西班牙语版本的语言环境 yaml 文件中,我尝试按如下方式设置翻译:
es:
categories: "Categorias"
home: Inicio
live_casino: "Casino en Vivo"
sportsbook: Deportes
这就像一个魅力,但是一旦我在西班牙语单词中添加重音,如下所示:
categories: "Categorías"
Rails 给我以下错误:
I18n::InvalidLocaleData in WelcomeController#index
can not load translations from .../config/locales/es.yml: #<Psych::SyntaxError: (.../config/locales/es.yml): invalid trailing UTF-8 octet at line 1 column 1>
我已经尝试了在网上找到的所有方法,但没有任何效果,请帮忙!
我在 Notepad++ 中打开语言环境文件,发现它是用“UTF-8 w/o BOM”编码的。
单击
Encoding -> Convert to UTF-8
,错误就消失了。
尝试将以下行放在 es.yml 文件的开头:
# encoding: utf-8
有同样的错误,就我而言,我在文本中间有 : ,但是 : 是功能性符号,所以去掉它,这可能是由从在线或 ord 复制并粘贴的任何符号引起的。
我在使用 helm update 命令时解决了同样的问题。不幸的是,helm 没有告诉我问题的确切位置(显示了不存在的行),因此我从头开始创建了一个空白文件,并复制粘贴了损坏文件的所有内容。这次手术后一切都很顺利。