簡體   English   中英

Rails生成命令錯誤

[英]Rails Generate command error

我在rvm中使用Rails 4.2.7.1和ruby 2.2.5。 軟件包更新后,我無法再運行rails g命令。 繼續出現以下錯誤:

-- [](4.2)
/Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/activerecord-4.2.7.1/lib/active_record/migration.rb:664:in `block in method_missing': undefined method `[]' for #<ActiveRecord::Migration:0x007fce8f996460> (NoMethodError)
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/activerecord-4.2.7.1/lib/active_record/migration.rb:634:in `block in say_with_time'
    from /Users/Sergei/.rvm/rubies/ruby-2.2.5/lib/ruby/2.2.0/benchmark.rb:288:in `measure'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/activerecord-4.2.7.1/lib/active_record/migration.rb:634:in `say_with_time'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/activerecord-4.2.7.1/lib/active_record/migration.rb:654:in `method_missing'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/activerecord-4.2.7.1/lib/active_record/migration.rb:416:in `method_missing'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/encrypted_store-0.3.0/lib/generators/encrypted_store/upgrade/ZeroOneFive/templates/upgrade_encryption_keys_to_015.rb:1:in `<top (required)>'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/activesupport-4.2.7.1/lib/active_support/dependencies.rb:274:in `require'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/activesupport-4.2.7.1/lib/active_support/dependencies.rb:274:in `block in require'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/activesupport-4.2.7.1/lib/active_support/dependencies.rb:240:in `load_dependency'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/activesupport-4.2.7.1/lib/active_support/dependencies.rb:274:in `require'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/encrypted_store-0.3.0/lib/encrypted_store/railtie.rb:18:in `block (2 levels) in <class:Railtie>'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/encrypted_store-0.3.0/lib/encrypted_store/railtie.rb:18:in `each'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/encrypted_store-0.3.0/lib/encrypted_store/railtie.rb:18:in `block in <class:Railtie>'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/railtie.rb:228:in `call'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/railtie.rb:228:in `block in run_generators_blocks'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/railtie.rb:245:in `each'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/railtie.rb:245:in `each_registered_block'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/railtie.rb:228:in `run_generators_blocks'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/application.rb:462:in `block in run_generators_blocks'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/engine/railties.rb:13:in `each'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/engine/railties.rb:13:in `each'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/application.rb:462:in `run_generators_blocks'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/engine.rb:461:in `load_generators'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/commands/commands_tasks.rb:129:in `generate_or_destroy'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/commands/commands_tasks.rb:50:in `generate'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
    from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/railties-4.2.7.1/lib/rails/commands.rb:17:in `<top (required)>'
    from bin/rails:4:in `require'
    from bin/rails:4:in `<main>'

已經嘗試重新安裝gemset並刪除所有以前的遷移文件,但是並沒有幫助。 可能是什么原因?

好! 我自己解決了。 從這行中可以看到

from /Users/Sergei/.rvm/gems/ruby-2.2.5@rails4/gems/encrypted_store-0.3.0/lib/generators/encrypted_store/upgrade/ZeroOneFive/templates/upgrade_encryption_keys_to_015.rb:1:in `<top (required)>'

它具有來自gem crypto_store的依賴關系。 我從Gemfile中刪除了這個gem,然后使用bundle命令(gem'encrypted_store','〜> 0.2.8')重新安裝了它。 在此之后,錯誤消失了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM