Rails栏杆宝石错误"未定义方法:'少'"

Tam*_*n87 12 ruby-on-rails ruby-on-rails-3 twitter-bootstrap

我刚刚用gem update和更新了我的rails app的宝石bundle update.当我试图用rails s它测试时,它给了我这个错误:

/Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/railtie/configuration.rb:85:inmethod_missing':未定义的方法 less' for #<Rails::Application::Configuration:0x0000010308a300> (NoMethodError)

其余的错误消息如下:

from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/twitter-bootstrap-rails-2.1.6/lib/twitter/bootstrap/rails/engine.rb:15:in `block in <class:Engine>'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/initializable.rb:30:in `instance_exec'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/initializable.rb:30:in `run'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/initializable.rb:55:in `block in run_initializers'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/initializable.rb:54:in `each'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/initializable.rb:54:in `run_initializers'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/application.rb:136:in `initialize!'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/railtie/configurable.rb:30:in `method_missing'
    from /Users/Richard/Code/Rails/rgsimms/config/environment.rb:5:in `<top (required)>'
    from /Users/Richard/Code/Rails/rgsimms/config.ru:4:in `require'
    from /Users/Richard/Code/Rails/rgsimms/config.ru:4:in `block in <main>'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/rack-1.4.1/lib/rack/builder.rb:51:in `instance_eval'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/rack-1.4.1/lib/rack/builder.rb:51:in `initialize'
    from /Users/Richard/Code/Rails/rgsimms/config.ru:1:in `new'
    from /Users/Richard/Code/Rails/rgsimms/config.ru:1:in `<main>'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/rack-1.4.1/lib/rack/builder.rb:40:in `eval'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/rack-1.4.1/lib/rack/builder.rb:40:in `parse_file'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/rack-1.4.1/lib/rack/server.rb:200:in `app'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/commands/server.rb:46:in `app'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/rack-1.4.1/lib/rack/server.rb:301:in `wrapped_app'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/rack-1.4.1/lib/rack/server.rb:252:in `start'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/commands/server.rb:70:in `start'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/commands.rb:55:in `block in <top (required)>'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/commands.rb:50:in `tap'
    from /Users/Richard/.rvm/gems/ruby-1.9.2-p318/gems/railties-3.2.3/lib/rails/commands.rb:50:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'
Run Code Online (Sandbox Code Playgroud)

这是Twitter Bootstrap宝石的错误吗?我还在学习,如何解决这个问题呢?任何帮助都很棒.

Bra*_*rth 33

twitter bootstrap gem取决于较少的gem.来自文档:

gem "therubyracer"
gem "less-rails" #Sprockets (what Rails 3.1 uses for its asset pipeline) supports LESS
gem "twitter-bootstrap-rails"
Run Code Online (Sandbox Code Playgroud)

我个人发现twitter bootstrap更容易将文件从官方网站转储到vendor/assets目录.从gem更新比手动更容易,但是当更新bootstrap时,你有点想"手工"并且"通过眼睛"检查它 - 我更喜欢额外的努力,以确保它不会得到做得很轻松.此外,很难从宝石中删除某些(例如)响应部分,而没有(据我所知)"取消指定"样式.响应式内容在大小方面从版本变为版本,因此您不能仅仅依赖于它的全部工作.我真的看不到使用gem的任何优势.

更新

现在有一个官方宝石,我建议检查:https://github.com/twbs/bootstrap-sass