0

我对 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并重新安装了我的包,但这似乎没有解决问题。

任何帮助将不胜感激。

4

2 回答 2

1

根据Unsupported rails environment for compass.错误,这听起来像是 compass 和 Rails 4 的问题。

通过将您的行compass-rails更改为,使用与 Rails 4 兼容的版本:gem 'compass-rails'Gemfile

gem 'compass-rails', github: 'milgner/compass-rails', branch: 'rails4'

我不确定 spree_fancy 本身是否与 Rails 4 兼容,所以您可能想查看Ready for Rails 4?查看您使用的 gem 是否与 Rails 4 兼容。

于 2013-07-17T16:10:27.717 回答
1

当前发布的 Spree 版本不支持 Rails 4。Spree 有一个支持 Rails 4 的分支,您可以在此Spree Rails 4 博客文章中了解更多信息。

我不相信 spree_fancy 当前支持 Rails 4,因为它依赖于不支持 Rails 4 的 Compass。有几个支持 Rails 4 的分支,但 spree_fancy 未配置为使用它们。

简短版本:Spree on Rails 4 还没有准备好迎接黄金时段。如果您是 Rails 新手,您应该坚持使用 Spree 的 3.2.x。Spree on Rails 4 将在几个月后准备就绪,然后您就可以升级了。

于 2013-07-17T16:08:51.483 回答