2013-08-10 3 views
0

Я новый пользователь Spree and Rails и следите за советами разработчика (http://guides.spreecommerce.com/developer/extensions_tutorial.html) на spree commerce, чтобы создать новое расширение, но без успеха.Spree - Generator command

Когда я следующий в моем директора расширения Шпрее,

rails g migration add_sale_price_to_spree_variants sale_price:decimal 

Я получаю

C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/acts_as_list-0.2.0/lib/acts 
_as_list.rb:18:in `insert': uninitialized constant ActiveRecord::Base (NameError 
) 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/acts_as_list-0 
.2.0/lib/acts_as_list.rb:24:in `<top (required)>' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/core_ 
ext/kernel_require.rb:64:in `require' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/core_ 
ext/kernel_require.rb:64:in `require' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/spree_core-2.0 
.4/lib/spree/core.rb:3:in `<top (required)>' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/core_ 
ext/kernel_require.rb:116:in `require' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/core_ 
ext/kernel_require.rb:116:in `rescue in require' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/core_ 
ext/kernel_require.rb:122:in `require' 
     from C:/Sites/spree_layered_pricing/lib/spree_layered_pricing/engine.rb: 
3:in `<class:Engine>' 
     from C:/Sites/spree_layered_pricing/lib/spree_layered_pricing/engine.rb: 
2:in `<module:SpreeLayeredPricing>' 
     from C:/Sites/spree_layered_pricing/lib/spree_layered_pricing/engine.rb: 
1:in `<top (required)>' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/core_ 
ext/kernel_require.rb:112:in `require' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/core_ 
ext/kernel_require.rb:112:in `require' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.1 
4/lib/rails/engine/commands.rb:13:in `<top (required)>' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/core_ 
ext/kernel_require.rb:64:in `require' 
     from C:/RailsInstaller/Ruby1.9.3/lib/ruby/site_ruby/1.9.1/rubygems/core_ 
ext/kernel_require.rb:64:in `require' 
     from script/rails:7:in `<main>' 

Есть ли способ обойти это? Чего я пропущу?

+0

У вас установлен «activerecord»? Сделайте 'gem list activerecord' в командной строке. Это даст вам подсказку. – vee

+0

C: \ Сайты> драгоценный камень список ActiveRecord *** МЕСТНЫЕ GEMS *** ActiveRecord (4.0.0, 3.2.14) ActiveRecord-deprecated_finders (1.0.3) ActiveRecord-SQLServer-адаптер (3.2.12) –

+0

Я сделал все, что нужно, в приложении для запуска, теперь он работает. Раньше я делал это только за пределами приложения для буйства, но внутри расширения блин. –

ответ

0

В документации вы ссылаетесь, просто сдуть пример миграции, они говорят

TODO: сделать выше генератор на самом деле работает в удлинительных каталогах

Вы пробовали использовать другое имя, затем используйте код, который они предоставляют?

class AddSalePriceToSpreeVariants < ActiveRecord::Migration 
    def change 
    add_column :spree_variants, :sale_price, :decimal, :precision => 8, :scale => 2 
    end 
end