Ruby on Rails Грешка в rake db:migrate синтактична грешка, неочакван $end, очаква се '}'

Получавам тази грешка, когато стартирам rake db:migrate *db/migrate//004_add_data_to_measurement_type_and_measurement_unit.rb:3: невалиден многобайтов знак (US-ASCII) db/migrate//004_add_data_to_measurement_type_and_measurement_unit.rb:3: невалиден многобайтов знак (US-ASC II) 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' от :name =>'m/s²'. Това премахна грешката.

Но проблемът е, че имам нужда от горния индекс и не знам как предишният разработчик успя да изпълни db:migrate на това. Виждали ли сте нещо подобно?

Благодаря


person shashin    schedule 16.12.2010    source източник


Отговори (1)


Проблемът е, че горният индекс не е ASCII.

Предишният разработчик може да е задал нещо, така че винаги да се приема UTF-8, но трябва да можете да го направите за този скрипт специално, като добавите магическия коментар

# coding: utf-8

близо до горната част на скрипта.

person Don Roby    schedule 16.12.2010