升级到rails 3.2后,我看到ActiveRecord :: Fixture :: FormatError:解析时出现YAML错误

时间:2013-03-14 10:27:55

标签: ruby-on-rails-3 ruby-on-rails-3.2 yaml

使用ruby 1.9.2升级到rails 3.2.12后,我看到以下错误。

  

ActiveRecord :: Fixture :: FormatError:解析/SampelRails/user_properties.yml时发生YAML错误。请注意,YAML必须始终使用空格缩进。不允许使用标签。请看http://www.yaml.org/faq.html   确切的错误是:     Psych :: SyntaxError:无法在第1行第0列解析YAML

我已经加倍检查了yml文件,它们似乎正确缩进。

根据https://github.com/rails/rails/issues/2731这个问题似乎在rails 3.1.1中得到修复。

3 个答案:

答案 0 :(得分:3)

刚遇到同样的问题,但问题是我在test/fixtures/vcr_cassettes/*.yml中保存了VCR个磁带。
ActiveRecord::Fixture被包含AR夹具数据以外的内容的yml文件搞糊涂了。

答案 1 :(得分:0)

nathanvda发布的链接确实有效。

  

尝试在config / boot.rb

的开头添加它
require 'yaml'
YAML::ENGINE.yamler= 'syck'

Rails 3 - 'Couldn't parse Yaml'

答案 2 :(得分:0)

我遇到了同样的问题。通过从fixtures目录中删除虚拟夹具文件来解决它。该文件只有评论。