【问题标题】:Upgraded ruby from 1.9.3 to 2.1.6, active_admin throws NoMethodError (active_admin.css.scss)ruby 从 1.9.3 升级到 2.1.6,active_admin 抛出 NoMethodError (active_admin.css.scss)
【发布时间】:2015-07-17 07:40:13
【问题描述】:

在将我的应用从 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 assets:precompile(部署期间也会发生)时复制了此错误。

我尝试将active_admin.css.scss的内容完全注释掉,但无济于事。我的相关 gem 版本:

  • activeadmin (0.5.1)
  • 萨斯 (3.4.13)
  • sass-rails (3.2.6)
  • bootstrap-sass (2.1.1.0)
  • 导轨 (3.2.21)

在 ruby​​ 1.9.3 和 2.1.6 之间发生了什么可能会导致样式表出现此错误?

【问题讨论】:

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


    【解决方案1】:

    根据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...)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多