我对Rails相对较新,我正在尝试使用Rails 4.0创建一个基本的狂欢应用程序。我最近尝试为我的商店安装扩展程序(spree_fancy),在运行bundle exec rails g spree_fancy:install
命令时,我一直看到这条消息:
Unsupported rails environment for compass.
在安装扩展程序之前,我可以在本地看到我的应用程序加载,但现在我遇到了:
NoMethodError
和
undefined method `empty?' for nil:NilClass
我假设这个错误是由spree_fancy引起的。有没有办法来解决这个问题?如果没有,我将如何去除spree_fancy gem?我从Gemfile中删除了它,运行了gem uninstall spree_fancy
,并重新安装了我的软件包,但这似乎没有办法。
非常感谢任何帮助。
答案 0 :(得分:1)
当前发布的Spree版本不支持rails 4. Spree的一个分支支持Rails 4,您可以在此Spree Rails 4 Blog Post阅读更多信息。
我不相信spree_fancy目前支持Rails 4,因为它依赖于不支持Rails 4的Compass。有几个支持rails 4的分支,但spree_fancy没有配置为使用它们。
简短版本:Spree on Rails 4尚未准备好迎接黄金时段。如果你是rails的新手,你应该坚持使用3.2.x for Spree。 Spree on Rails 4将在几个月内准备就绪,您可以升级。
答案 1 :(得分:1)
基于Unsupported rails environment for compass.
错误,这听起来像罗盘和Rails 4的问题。
通过将compass-rails
中的gem 'compass-rails'
行更改为:
Gemfile
版本
gem 'compass-rails', github: 'milgner/compass-rails', branch: 'rails4'
我不确定spree_fancy本身是否与Rails 4兼容,因此您可能需要查看Ready for Rails 4?以查看您使用的gem是否与Rails 4兼容。