Неинициализированная константа Spree::ThemeSupport - Spree 1.3

Я использую Spree 1.3.0, я установил spree_products_tags для добавления тегов к продуктам,

srikanth@srikanth-laptop:~/projects/mystore$ rake spree_products_tags:install:migrations
rake aborted!
uninitialized constant Spree::ThemeSupport
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/bundler/gems/spree_products_tags-b90636c337ff/lib/spree_products_tags_hooks.rb:1:in `<top (required)>'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/gems/polyglot-0.3.3/lib/polyglot.rb:63:in `require'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/gems/polyglot-0.3.3/lib/polyglot.rb:63:in `require'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/bundler/gems/spree_products_tags-b90636c337ff/lib/spree_products_tags.rb:2:in `<top (required)>'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/gems/bundler-1.2.3/lib/bundler/runtime.rb:68:in `require'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/gems/bundler-1.2.3/lib/bundler/runtime.rb:68:in `block (2 levels) in require'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/gems/bundler-1.2.3/lib/bundler/runtime.rb:66:in `each'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/gems/bundler-1.2.3/lib/bundler/runtime.rb:66:in `block in require'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/gems/bundler-1.2.3/lib/bundler/runtime.rb:55:in `each'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/gems/bundler-1.2.3/lib/bundler/runtime.rb:55:in `require'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/gems/bundler-1.2.3/lib/bundler.rb:128:in `require'
/home/srikanth/projects/mystore/config/application.rb:7:in `<top (required)>'
/home/srikanth/projects/mystore/Rakefile:5:in `require'
/home/srikanth/projects/mystore/Rakefile:5:in `<top (required)>'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/bin/ruby_noexec_wrapper:14:in `eval'
/home/srikanth/.rvm/gems/ruby-1.9.3-p327/bin/ruby_noexec_wrapper:14:in `<main>'
(See full trace by running task with --trace)

Я проверил код для spree_products_tags,

class SpreeProductsTagsHooks < Spree::ThemeSupport::HookListener
  insert_after :admin_configurations_menu do
    "<%= configurations_menu_item(I18n.t('product_tags'), admin_product_tags_path, I18n.t('product_tags_desc')) %>"
  end

  insert_after :admin_configurations_sidebar_menu do
    %(<li<%== ' class="active"' if controller.controller_name == 'product_tags' %>><%= link_to t('product_tags'), admin_product_tags_path %></li>)
  end

  insert_after :admin_product_form_right, "admin/products/tag_fields"

  insert_after :products_list_item, "products/tag"
end

а. Как избавиться от Spree::ThemeSupport, а также выполнить описанное выше?
б. Есть ли другая альтернатива добавлению тегов к веселью?


person Srikanth Jeeva    schedule 27.12.2012    source источник


Ответы (1)


а. Проблема в том, что они действительно избавились от ThemeSupport (думаю, в 1.1 или 1.2), вам нужно использовать Deface, проблема в том, что гем, который вы используете, не был обновлен до этого, вам нужно заменить этот SpreeProductsTagsHooks и использовать Deface

Отредактируйте, вот один, который я изменил некоторое время назад, по какой-то причине я оставил старый ThemeSupport закомментированным внизу, что отлично подходит для этого app/overrides/add_user_groups_to_configuration_menu.rb" rel="nofollow">https://github.com/romul/spree_user_groups/blob/ec2a169d96acf6cbcf731d24d518134e55598d29/app/overrides/add_user_groups_to_configuration_menu.rb

person geermc4    schedule 02.01.2013