簡體   English   中英

Rails - 遷移突然不起作用

[英]Rails - migration suddenly doesn't work

當我嘗試運行遷移時,我的Rails應用程序突然停止工作。 例如:

$ rails generate migration AddBalanceToUsers balance:float
/Users/serg/.rvm/gems/ree-1.8.7-head/gems/rails-2.3.5/bin/../lib/rails_generator/options.rb:32:in `default_options': undefined method `write_inheritable_attribute' for Rails::Generator::Base:Class (NoMethodError)
    from /Users/serg/.rvm/gems/ree-1.8.7-head/gems/rails-2.3.5/bin/../lib/rails_generator/base.rb:90
    from /Users/serg/.rvm/rubies/ree-1.8.7-head/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:29:in `gem_original_require'
    from /Users/serg/.rvm/rubies/ree-1.8.7-head/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:29:in `require'
    from /Users/serg/.rvm/gems/ree-1.8.7-head/gems/rails-2.3.5/bin/../lib/rails_generator.rb:34
    from /Users/serg/.rvm/rubies/ree-1.8.7-head/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:29:in `gem_original_require'
    from /Users/serg/.rvm/rubies/ree-1.8.7-head/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:29:in `require'
    from /Users/serg/.rvm/gems/ree-1.8.7-head/gems/rails-2.3.5/bin/rails:14
    from /Users/serg/.rvm/gems/ree-1.8.7-head/bin/rails:19:in `load'
    from /Users/serg/.rvm/gems/ree-1.8.7-head/bin/rails:19

我用

ree 1.8.7
rails 2.3.5 (but i also have rails 3.2.3)
RVM
OS X Lion

好的,我創立了解決方案。 rails 2中,我們應該通過其他方式生成遷移:

$ script/generate migration AddBalanceToUsers balance:float

script / generate是關鍵。

希望它能幫助別人。

我按照以下步驟解決了這個問題: -

(1)首先我通過運行'寶石環境'進行檢查

(2)然后我找到可執行的軌道: -
abc @ ubuntu:〜$ locate rails | grep -e“bin / rails $”/home/abc/.rvm/gems/ruby-1.9.3-p0/gems/railties-3.2.1/bin/rails / usr / LIB /紅寶石/ vendor_ruby / railties /斌/導軌

(3)我通過以下方式將路徑附加到〜/ .bashrc: -
abc @ ubuntu:〜$ echo'export PATH = $ PATH:/home/abc/.rvm/gems/ruby-1.9.3-0/gems/railties-.2.1/bin'>>〜/ .bashrc

(4)重新加載〜/ .bashrc文件: -
abc @ ubuntu:〜$。 在〜/ .bashrc

然后當我運行rails命令時,它完美地創建了一個新的示例應用程序:-)

暫無
暫無

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

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