0

我是菜鸟..当我试图捆绑安装一个狂欢主题时,我发现我添加了这样的错误

gem 'spree_rdr_theme', :git => 'git://github.com/spree/spree_rdr_theme.git'

到 gemfile 然后我做了 bundle install 然后当我给

rails g spree_rdr_theme:install

我发现错误如下

shany@shany:~/mystore$ rails g spree_rdr_theme:install
/home/shany/.rvm/gems/ruby-1.9.3-p448@rails3tutorial2ndEd/bundler/gems/spree_rdr_
theme-b5d6a80caa6b/app/overrides/spree/shared/redefine_recently_viewed_overrides.rb
:1:in `<top (required)>': undefined method `all' for #<Rails::Engine::Railties:
0x954ee04> (NoMethodError)......

为什么会这样?请帮我

4

1 回答 1

1

您使用的是非常旧的 Spree (0.70.1) 和 Rails (3.1.1) 版本。两者都非常旧(2012 年发布),并且具有突出的安全漏洞,并且不再维护。

您尝试安装的 spree_rdr_theme 尚未更新以适用于较新版本的 Rails,因此会给您带来问题。

要在现有版本上运行,请尝试在 Gemfile 中使用此行:

gem 'spree_rdr_theme', :git => 'git://github.com/spree/spree_rdr_theme.git', :branch => '0-70-stable'

话虽如此。相反,我会考虑将 Spree 升级到 2.0,Rails 升级到 3.2.14(或 Spree 升级到 2.1,Rails 升级到 4.0),并使用新的 spree_fancy 主题而不是 spree_rdr_theme(也不再维护)。无论如何,您都应该这样做,以便了解最新的安全修复程序。

如果这是一个新项目,您可以轻松地按照 Spree 指南创建一个新项目。如果这是对现有项目的升级,那么您的工作将会为您完成,但是运行具有已知安全漏洞的代码是自找麻烦。

于 2013-10-24T16:21:54.170 回答