ruby на рельсах ошибка грабли db: создать - PullRequest
0 голосов
/ 25 мая 2011

Я использовал ruby ​​на рельсах нормально, без проблем, теперь неожиданно каждый раз, когда я запускаю rake db: create, я получаю следующие ошибки:

C:\>cd xampp

C:\xampp>cd htdocs

C:\xampp\htdocs>cd what

C:\xampp\htdocs\what>rake db:create
rake aborted!
undefined method `task' for #<What::Application:0x20eb1e0>

(See full trace by running task with --trace)

C:\xampp\htdocs\what>

Любая помощь, пожалуйста ???* Вот и все мои cmd

   C:\xampp\htdocs\comeon>rake db:create --trace
rake aborted!
undefined method `task' for #<Comeon::Application:0x211fb30>
C:/Ruby192/lib/ruby/gems/1.9.1/gems/railties-3.0.7/lib/rails/application.rb:215:
in `initialize_tasks'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/railties-3.0.7/lib/rails/application.rb:139:
in `load_tasks'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/railties-3.0.7/lib/rails/application.rb:77:i
n `method_missing'
C:/xampp/htdocs/comeon/Rakefile:7:in `<top (required)>'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.0/lib/rake/rake_module.rb:25:in `lo
ad'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.0/lib/rake/rake_module.rb:25:in `lo
ad_rakefile'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.0/lib/rake/application.rb:495:in `r
aw_load_rakefile'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.0/lib/rake/application.rb:78:in `bl
ock in load_rakefile'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.0/lib/rake/application.rb:129:in `s
tandard_exception_handling'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.0/lib/rake/application.rb:77:in `lo
ad_rakefile'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.0/lib/rake/application.rb:61:in `bl
ock in run'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.0/lib/rake/application.rb:129:in `s
tandard_exception_handling'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.0/lib/rake/application.rb:59:in `ru
n'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.0/bin/rake:31:in `<top (required)>'

C:/Ruby192/bin/rake:19:in `load'
C:/Ruby192/bin/rake:19:in `<main>'

Ответы [ 2 ]

5 голосов
/ 25 мая 2011

Это поможет вам.

gem uninstall rake

gem install rake -v 0.8.7

Если проблема все еще существует, удалите грабли и установите, используя

gem uninstall rake
gem install rake

для получения дополнительной информации

Неопределенный метод 'task' с использованием Rake 0.9.0

1 голос
/ 29 мая 2011

У меня возникла та же проблема, я нашел сообщение Джима Вейриха в git hub, в котором решена моя проблема

https://github.com/jimweirich/rake/issues/33#issuecomment-1213705

Здесь есть две проблемы: (1) проблема Димиткозаключается в том, что встроенная команда rake смешивается с файлами библиотеки нового гема.Организация вашего списка окружения $ PATH так, чтобы гем-версия rake имела преимущество над встроенной версией, должна это исправить.Если вы используете bundler, вы также можете попробовать 'bundle exec rake'.

Вторая проблема (mjansen401 и r00k выше) заключается в том, что новая версия rake не помещает свои команды DSL (task, file), desc, import и т. д.) в корне пространства имен Object больше (размещение их в Object означает, что у каждого объекта есть команда задачи, что не очень удобно. Команды DSL доступны путем смешивания в модуле Rake :: DSL с любым модулем, в котором требуетсякоманды.

Пока рельсы не будут обновлены для работы с Rake 0.9.x, поместите в свой проект Rakefile следующее перед вызовом Application.load_tasks:

class Rails::Application
  include Rake::DSL if defined?(Rake::DSL)
end

Дайте мне знать, если это работает для вас.

Надеюсь, это поможет

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