我是菜鸟。当我尝试捆绑安装一个狂欢主题时,我发现这样的错误,我补充说
gem 'spree_rdr_theme', :git => 'git://github.com/spree/spree_rdr_theme.git'
然后我使用包安装,然后当我给出
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)......
为什么会发生这种情况?请帮帮我
发布于 2013-10-25 00:21:54
您使用的是一个非常旧的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 (或升级到2.1,Rails升级到4.0),并使用新的spree_fancy主题而不是spree_rdr_theme (也不再维护)。您无论如何都应该这样做,以便及时了解最新的安全修复程序。
如果这是一个新项目,您可以很容易地按照Spree指南创建一个新项目。如果这是一个现有项目的升级,您的工作将被削减,但运行具有已知安全漏洞的代码将会自找麻烦。
https://stackoverflow.com/questions/19539410
复制相似问题