我在安装狂欢时遇到麻烦。安装完所有必需的宝石后,我启动了以下命令:
rails _4.2.2_ new my_store
spree install my_store
我没有收到任何错误消息但是当我启动“rails s”时,我得到了狂欢主页,除了“找不到产品”消息之外别无其他。
关于什么可能出错的任何线索?
感谢
答案 0 :(得分:2)
首先,如果尚未安装
,则需要在您的环境中安装spree gemgem install spree_cmd
然后你需要创建一个rails项目
rails new my_store
创建rails项目后运行此命令,必须在项目文件夹
之外运行spree install my_store
最后它会在终端中提示一些问题(如果你想运行种子,它有默认数据),你必须用是(y)或不是(n)来回答,这取决于你想要安装什么(我建议你对所有人说“是”)
现在,您将使用所有默认配置和数据运行您的Spree项目。
答案 1 :(得分:1)
简单的spree安装不提供样本数据或产品,您必须通过命令bundle exec rake spree_sample:load
答案 2 :(得分:0)
确定sqlite数据库有问题,但仍然不知道... 我刚刚使用mysql数据库创建了一个新的rails项目:
rails new myproject -d mysql
然后:
bundle exec rake db:create
最后:
spree install myproject
非常感谢您的帮助
答案 3 :(得分:-1)
这种情况正在发生,因为佣金已经中止,州和城市没有完全装满。
有一个简单的临时解决方案来完成rake并加载所有样本数据。
2
然后使用
打开spree_core gembundle exec rake db:drop
根据
进行调整bundle open spree_core
和
spree_core/db/default/spree/countries.rb
require 'carmen'
Carmen::Country.all.map do |country|
name = country.name
iso3 = country.alpha_3_code
iso = country.alpha_2_code
iso_name = country.name.upcase
numcode = country.numeric_code
states_required = country.subregions?
# country_inserts << [name, iso3, iso, iso_name, numcode, states_required].join(", ")
Spree::Country.new( :name => name,
:iso3 => iso3,
:iso => iso,
:iso_name => iso_name,
:numcode => numcode,
:states_required => states_required
).save!
end
canada = Spree::Country.find_by(iso: "CA")
Spree::Config[:default_country_id] = canada.id
然后做
spree_core/db/default/spree/states.rb
connection = ActiveRecord::Base.connection
state_inserts = []
Spree::Country.where(states_required: true).each do |country|
carmen_country = Carmen::Country.named(country.name)
carmen_country.subregions.each do |subregion|
name = connection.quote subregion.name
abbr = connection.quote subregion.code
country_id = connection.quote country.id
state_inserts << [name, abbr, country_id].join(", ")
Spree::State.new(:name => name, :abbr => abbr, :country_id => country_id).save!
end
end
希望这能解决你的问题
谢谢