/ / JSON грешка с тръбопровода за активи coffeescript & Rails - рубин на релси, coffeescript, актив на тръбопровода

Грешка в JSON с тръбопровод за активите на coffeescript & Rails - Ruby on rail, coffeescript, asset pipeline

Използвам Rails 3.2.14 без проблем ...

Наскоро преименувах application.js да се application.js.coffee и сега получавам JSON грешка.

JSON::GeneratorError

only generation of JSON objects or arrays allowed
(in /.../app/assets/javascripts/application.js.coffee)

Дори когато изтрия цялото съдържание на application.js.coffee Все още получавам грешката.

Когато се опитам да го прегледам директно (http://localhost:3000/assets/application.js), неговият същия въпрос:

throw Error("JSON::GeneratorError: only generation of JSON objects or arrays allowedn  (in /.../app/assets/javascripts/application.js.coffee)")

Комбинирах приложението си за всякакви потенциални проблеми, но всичко изглежда доста стандартно.

Отговори:

6 за отговор № 1

Имах подобен проблем (Релси 4 активи тръбопровода хвърля "разрешено само поколение JSON обекти или масиви"), което нямаше нищо общо с application.js. Скъпоценният камък multi_json се актуализира от 1.7.8 до 1.7.9 и счупи приложението ми. Всяка промяна в файловете cofeescript доведе до тази грешка "разрешено само единствено поколение JSON обекти или масиви".

Изрично сложих multi_json скъпоценния камък в моя Gemfile, фиксиран към версия 1.7.8. В решен проблема за мен.


5 за отговор № 2

Имам проблем със запазването не в проект Rails, а проект с рубин, използващ зъбни колела. Най-накрая не съм определил проблема, но изглежда е свързан с execjs и използваното Javascript изпълнение.

Можете да опитате да добавите

gem "therubyracer"

към вашия Gemfile. Това инсталира V8 двигателя, което реши проблема за мен.