gpt4 book ai didi

ruby - Rails 3 yaml 错误

转载 作者:数据小太阳 更新时间:2023-10-29 06:48:48 24 4
gpt4 key购买 nike

我目前正在将我的应用程序从 Rails 2.3 升级到 3.0 和 Ruby 1.9.3。进行必要的更改并尝试访问我的应用程序的主页后,出现以下错误。

Psych::SyntaxError ((/apps/myapp/config/locales/en.yml): did not find expected node     content while parsing a flow node at line 73 column 14):
/usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/psych.rb:203:in `parse'
/usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/psych.rb:203:in `parse_stream'
/usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/psych.rb:151:in `parse'
/usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/psych.rb:127:in `load'
/usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/psych.rb:297:in `block in load_file'
/usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/psych.rb:297:in `open'
/usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/psych.rb:297:in `load_file'

可以在以下位置找到完整的堆栈跟踪:http://pastie.org/5478123

en.yml的第73行包含

order: [:year, :month, :day]

谁能帮我解决这个问题。目前 myapp 在 Rails 2.3.14 和 ruby​​ 1.8.7 上运行

最佳答案

Ruby 1.9.3 使用 Psych作为它的 Yaml 解析器,1.8.7 使用了旧的和过时的 Syck。您看到的问题是 known issue in LibYaml ,Psych 所基于的库,并且是由于在流上下文中允许使用冒号时出现的一些歧义。

有一个Ruby bug关于这个。

解决方案是更改 Yaml 以使用 block 上下文:

order: 
- :year
- :month
- :day

Rails 有 changed the template that generated this Yaml to avoid this bug .

关于ruby - Rails 3 yaml 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13700481/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com