我在Rails 4.0.5
创建了一个全新的项目,并添加到我的Gemfile spree 2.1.7
,之后我执行了生成器spree:install
。这是我的Gemfile:
source 'file:///Users/dustet/rubygems/'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.0.5'
gem 'spree', '2.1.7'
...
由于我正在脱机工作,我使用的是gem generate index
生成的本地gem服务器,在此目录中,我拥有rails
和spree
所需的所有宝石。问题是当我转到我的store_front_end
时会抛出以下错误:
NameError in Spree::Home#index
Showing /Library/Ruby/Gems/2.0.0/gems/spree_frontend-2.1.7/app/views/spree/shared/_products.html.erb where line #12 raised:
undefined local variable or method `active_record' for #<ActiveRecord::Associations::JoinDependency::JoinAssociation:0x007fb11095adf8>
并抛出错误的代码是:
*<% if products.empty? %>*
<%= Spree.t(:no_products_found) %>
<% elsif params.key?(:keywords) %>
<h6 class="search-results-title"><%= Spree.t(:search_results, :keywords => h(params[:keywords])) %></h6>
盯着线的错误。使用spree 2.2.2
错误是相同的但是代码是不同的,这个错误就在于:
<div data-hook="homepage_products">
*<% cache(cache_key_for_products) do %><---- Error
<%= render :partial => 'spree/shared/products', :locals => { :products => @products } %>
<% end %>
</div>
答案 0 :(得分:1)
内部宝石依赖关系似乎存在问题。当我使用快速互联网连接并使用 https://rubygems.org 作为我Gemfile
中的来源时,一切都像魅力一样。关于使用Rails
离线问题,另一个问题是另一个问题。