【问题标题】:how to annotate rails models in rails version 3.2.1如何在 rails 3.2.1 版本中注释 rails 模型
【发布时间】:2012-03-11 03:40:45
【问题描述】:

我正在尝试按照一些在线教程来在 Rails 中注释我的模型。但是,似乎所有教程都在谈论过时的注释版本或不正确的安装,这是一团糟。

到目前为止,我尝试了以下方法

1) 在 Gemfile 中添加了这个

gem 'annotate', '2.4.0'

2) 然后是命令:

bundle install

3) 然后我看到注释 gem 已安装并显示在命令中

bundle show

4) 最后,为了注释我的模型,我使用了命令

bundle exec annotate --position before

此时我希望我的模型被注释但是我得到的是以下错误消息:

/Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.2.1/lib/active_record/railties/databases.rake:4:in `<top (required)>': undefined method `namespace' for main:Object (NoMethodError)
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.2.1/lib/active_record/railtie.rb:33:in `load'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.2.1/lib/active_record/railtie.rb:33:in `block in <class:Railtie>'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/railtie.rb:184:in `instance_exec'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/railtie.rb:184:in `block in load_tasks'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/railtie.rb:184:in `each'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/railtie.rb:184:in `load_tasks'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/engine.rb:423:in `block in load_tasks'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/application/railties.rb:8:in `each'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/application/railties.rb:8:in `all'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/engine.rb:423:in `load_tasks'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/application.rb:145:in `load_tasks'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/railtie/configurable.rb:30:in `method_missing'
from Rakefile:7:in `<top (required)>'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/annotate-2.4.0/lib/annotate.rb:17:in `load'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/annotate-2.4.0/lib/annotate.rb:17:in `load_tasks'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/gems/annotate-2.4.0/bin/annotate:66:in `<top (required)>'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/bin/annotate:19:in `load'
from /Users/AM/.rvm/gems/ruby-1.9.2-p290/bin/annotate:19:in `<main>'

感觉完全被难住了。

关于如何进行的任何想法?

谢谢

【问题讨论】:

    标签: ruby-on-rails annotate


    【解决方案1】:

    尝试使用更新的测试版。

    gem 'annotate', '2.4.1.beta1'
    

    【讨论】:

    • 嗯,这不起作用,收到消息“在您的 Gemfile 中列出的任何 gem 源中找不到 gem 'annotate (= 2.4.1.beta) ruby​​'。”
    • 在 gemfile 中更改版本号后尝试运行bundle update annotate。我发现有时简单的bundle install 不起作用。
    • 成功了!哇,这东西比我想象的要复杂!
    【解决方案2】:

    你也可以试试这个宝石annotated-rails

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-05
      • 2010-12-14
      • 1970-01-01
      相关资源
      最近更新 更多