1

我在运行 rake db:migrate *db/migrate//004_add_data_to_measurement_type_and_measurement_unit.rb:3: invalid multibyte char (US-ASCII) db/migrate//004_add_data_to_measurement_type_and_measurement_unit.rb:3: invalid multibyte char (US-ASCII) 时收到此错误db/migrate//004_add_data_to_measurement_type_and_measurement_unit.rb:3: 语法错误,意外 $end,期待 '}' ...celeration' => [{:name =>'m/s²', :si => true, :conversion_f。 ..*

然后我使用 *$ ruby​​ -wc db/migrate/004_add_data_to_measurement_type_and_measurement_unit.rb* 检查它并得到同样的错误。

我确信我拥有所有正确的宝石,所以我通过删除该行中的上标进行测试,使其:name =>'m/s' from :name =>'m/s²'。这消除了错误。

问题是我需要上标并且不知道以前的开发人员是如何设法运行 db:migrate 的。你见过类似的东西吗?

谢谢

4

1 回答 1

2

问题是上标不是ASCII。

以前的开发人员可能已经设置了一些东西,以便始终假定 UTF-8,但是您应该能够通过添加魔术注释来专门为此脚本执行此操作

# coding: utf-8

靠近脚本顶部。

于 2010-12-16T11:41:52.850 回答