Запуск сервера RoR для существующего приложения дает ошибку - PullRequest
1 голос
/ 04 февраля 2011

Я только что сделал свою первую настройку RoR, и создание нового приложения работает нормально. Но когда я хочу запустить сервер rails, я получаю следующую ошибку:

C: /Ruby192/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/yaml_ext.rb: 30: в «remove_method»: метод «to_yaml» не определен в классе ( NameError)

Я запустил «установку комплекта» в каталоге приложения и установил все необходимые файлы (однако с некоторыми проблемами, но я исключил гемы с проблемами в файле gem), а последняя установка комплекта сказала, что я успешно установил все необходимые пакеты.

Я потерян и не могу найти похожую ошибку в интернете. Вы можете мне помочь?

РЕДАКТИРОВАТЬ : Я забыл упомянуть, что у меня нет проблем с новым приложением. Он запускает существующий (который я не собирал, но отлично работает для других), с которым связана ошибка. Вот гемфайл для этого приложения:

source 'http://rubygems.org'

gem 'rails', '3.0.3'

gem 'mysql'

gem "haml", ">= 3.0.0"
gem "haml-rails"
gem 'simple_form'
gem 'delayed_job'
#gem 'auto_crawlers'
gem 'will_paginate', '~> 3.0.beta'

group :test do
  gem 'factory_girl_rails'
  gem 'mocha'
end
group :development do
  #gem "nifty-generators", "0.4.3", :git => "git://github.com/JonasNielsen/nifty-generators.git"
  gem 'fastercsv'

end
gem "mocha", :group => :test

Как вы думаете, ошибка в том, что я пропустил два камня с "#"? Сначала это вызывало проблемы, и я не думаю, что они нужны для тестирования некоторых незначительных изменений в приложении (некоторые представления, которые я должен изменить)

Ответы [ 2 ]

1 голос
/ 09 февраля 2011

Проблема описывается и предположительно исправляется здесь: https://github.com/collectiveidea/delayed_job/issuesearch?state=open&q=yaml#issue/194

0 голосов
/ 05 февраля 2011

Попробуйте это из командной строки: irb -rubygems -r delayed_job, а затем из вашего комплектного каталога bundle-exec irb -rubygems -r delayed_job, который покажет, есть ли разница между вашими системными гемами и вашими комплектными настройками - вы можете увидеть ошибку в одной или обеих попытках запустить IRB.

Если есть ошибка при использовании bundle-exec, но не в системных гемах, тогда это проблема с упаковщиком. Если нет, то уверены ли вы, что приложение предназначено для работы под Ruby 1.9? Похоже, что to_yaml недоступен в тот момент, когда требуется DJ, что означает, что ему, вероятно, нужно где-то require "yaml".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...