Ruby on rails 存储升级时出现未初始化常量错误

Ruby on rails 存储升级时出现未初始化常量错误,ruby-on-rails,ruby-on-rails-3,spree,Ruby On Rails,Ruby On Rails 3,Spree,我正在尝试从spree 0.7升级到spree 1.0.7。成功安装捆绑包后,我发现以下错误: /config/initializers/product_review_ratings.rb:12:in `<class:Config>': uninitialized constant Spree::ProductReviewsRatings::Config::PreferenceAccess (NameError) from /home/nish/repos/spree/voylla_

我正在尝试从spree 0.7升级到spree 1.0.7。成功安装捆绑包后,我发现以下错误:

/config/initializers/product_review_ratings.rb:12:in `<class:Config>': uninitialized constant Spree::ProductReviewsRatings::Config::PreferenceAccess (NameError)
from /home/nish/repos/spree/voylla_website_production/config/initializers/product_review_ratings.rb:10:in `<module:ProductReviewsRatings>'
from /home/nish/repos/spree/voylla_website_production/config/initializers/product_review_ratings.rb:2:in `<module:Spree>'
from /home/nish/repos/spree/voylla_website_production/config/initializers/product_review_ratings.rb:1:in `<top (required)>'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/engine.rb:556:in `block (2 levels) in <class:Engine>'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/engine.rb:555:in `each'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/engine.rb:555:in `block in <class:Engine>'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/initializable.rb:30:in `instance_exec'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/initializable.rb:30:in `run'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/initializable.rb:55:in `block in run_initializers'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/initializable.rb:54:in `each'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/initializable.rb:54:in `run_initializers'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/application.rb:96:in `initialize!'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/railtie/configurable.rb:30:in `method_missing'
from /home/nish/repos/spree/voylla_website_production/config/environment.rb:7:in `<top (required)>'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/polyglot-0.3.4/lib/polyglot.rb:65:in `require'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/polyglot-0.3.4/lib/polyglot.rb:65:in `require'
from /home/nish/repos/spree/voylla_website_production/config.ru:3:in `block in <main>'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/builder.rb:51:in `instance_eval'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/builder.rb:51:in `initialize'
from /home/nish/repos/spree/voylla_website_production/config.ru:in `new'
from /home/nish/repos/spree/voylla_website_production/config.ru:in `<main>'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/builder.rb:40:in `eval'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/builder.rb:40:in `parse_file'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/server.rb:200:in `app'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/commands/server.rb:46:in `app'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/server.rb:304:in `wrapped_app'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/server.rb:254:in `start'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/commands/server.rb:70:in `start'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/commands.rb:54:in `block in <top (required)>'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/commands.rb:49:in `tap'
from /home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/commands.rb:49:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
/config/initializers/product\u review\u ratings.rb:12:in`':未初始化的常量Spree::ProductReviewRatings::config::PreferenceAccess(NameError)
from/home/nish/repos/spree/voylla_网站_production/config/initializers/product_review_ratings.rb:10:in`'
from/home/nish/repos/spree/voylla_网站_production/config/initializers/product_review_ratings.rb:2:in`'
from/home/nish/repos/spree/voylla_网站_production/config/initializers/product_review_ratings.rb:1:in`'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/engine.rb:556:in'block(2层)in'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/engine.rb:555:in'each'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/engine.rb:555:in'block-in'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/initializable.rb:30:in'instance_exec'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/initializable.rb:30:in'run'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/initializable.rb:55:in`block in run_initializers'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/initializable.rb:54:in'each'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/initializable.rb:54:in'run_initializers'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/application.rb:96:in'initialize!'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/railtie/configurable.rb:30:in'method_missing'
from/home/nish/repos/spree/voylla_网站_production/config/environment.rb:7:in`'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/polyglot-0.3.4/lib/polyglot.rb:65:in'require'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/polyglot-0.3.4/lib/polyglot.rb:65:in'require'
from/home/nish/repos/spree/voylla_网站_production/config.ru:3:in'block in'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/builder.rb:51:in'instance_eval'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/builder.rb:51:in'initialize'
from/home/nish/repos/spree/voylla_网站_production/config.ru:in'new'
from/home/nish/repos/spree/voylla_网站_production/config.ru:in`'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/builder.rb:40:in'eval'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/builder.rb:40:in'parse_file'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/server.rb:200:in'app'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/commands/server.rb:46:in'app'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/server.rb:304:in`wrapp'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/rack-1.3.10/lib/rack/server.rb:254:in'start'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/commands/server.rb:70:in'start'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/commands.rb:54:in'block-in'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/commands.rb:49:in'tap'
from/home/nish/.rvm/gems/ruby-1.9.2-p320@spreeTest/gems/railties-3.1.12/lib/rails/commands.rb:49:in`'
来自脚本/rails:6:in'require'
来自脚本/rails:6:in`'
/config/initializers/product_review_ratings.rb

module Spree
  module ProductReviewsRatings
    class Config
      include Singleton
      include PreferenceAccess

      class << self
        def instance
          return nil unless ActiveRecord::Base.connection.tables.include?('configurations')
          ProductReviewsRatingsConfiguration.find_or_create_by_name("Default product reviews and ratings configuration")
        end
      end
    end
  end
end
模块狂欢
模块ProductReviewRatings
类配置
包括独生子女
包括优先访问权

通过此提交,已从Spree 1.0.0中删除类PreferenceAccess:

您可以添加到应用程序中以恢复该功能,但是,这很可能会导致其他问题

如果可能的话,您可能需要考虑从SpreeProductReviewsRatings移植到扩展,该扩展目前支持SPRE 1—2.3.0. beta。