升级的ruby从1.9.3升级到2.1.6,active_admin抛出NoMethodError(active_admin.css.scss)

时间:2015-05-06 22:58:45

标签: ruby-on-rails sass capistrano asset-pipeline activeadmin

将我的应用程序从ruby 1.9.3升级到2.1.6后,访问我的Active Admin驱动的管理界面会引发以下错误:

NoMethodError - undefined method 'empty?' for nil:NilClass (in /Users/myusername/Rails/myapp/app/assets/stylesheets/active_admin.css.scss)

我只是在访问Active Admin页面时以及在执行rake资产时复制了此错误:预编译(在部署期间也会发生)。

我试图完全评论active_admin.css.scss的内容,但无济于事。我的相关宝石版本:

  • activeadmin(0.5.1)
  • sass(3.4.13)
  • sass-rails(3.2.6)
  • bootstrap-sass(2.1.1.0)
  • rails(3.2.21)

ruby​​ 1.9.3和2.1.6之间可能导致样式表出现此错误的内容是什么?

1 个答案:

答案 0 :(得分:0)

根据this thread,sass gem 3.1.18是第一个兼容ruby-2.x的SASS gem版本。这导致我将我的sass-rails gem从3.2.4升级到3.2.6,这是一个依赖将我的sass gem升级到3.4.13(3.1.15)。

就这样做了!一般来说,没有更多与active_admin.css.scss或css相关的模糊错误。

<强>更新

sass-rails并不需要更新。只是sass gem解决了这个问题(同样,升级sass-rails莫名其妙地打破了应用程序中的一些javascript,特别是它触发了jquery.history.js中发现的错误History.js Core has already been loaded...。)