我正在设置我的第二个"狂欢"存储在本地开发环境中,使用Spree gem for RubyOnRails处理电子商务项目。
第一家商店有效,但当我关闭" rails服务器"对于store1并尝试为store2启动它,当我转到http://localhost:3000
时,我收到此错误:
Sprockets :: Rails :: Helper :: Spree :: Home#index中的AbsoluteAssetPathError
显示/Users/pivot/.rvm/gems/ruby-2.0.0-p481/gems/spree_frontend-2.3.2/app/views/spree/shared/_head.html.erb第7行引发:< / p>
传递给帮助者的资产名称不应包括&#34; / assets /&#34;字首。而不是使用&#34; favicon.ico&#34;
提取的来源(第7行):
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1" name="viewport">
<%== meta_data_tags %>
<%= canonical_tag(current_store.url) %>
<%= favicon_link_tag image_path('favicon.ico') %> #THIS IS THE HIGHLIGHTED LINE
<%= stylesheet_link_tag 'spree/frontend/all', :media => 'screen' %>
<%= csrf_meta_tags %>
<%= javascript_include_tag 'spree/frontend/all' %>
模板包含的跟踪:/Users/pivot/.rvm/gems/ruby-2.0.0-p481/gems/spree_frontend-2.3.2/app/views/spree/layouts/spree_application.html.erb
此错误来自狂欢视图文件,违规行实际上只是传入&#34; favicon.ico&#34;不是&#34; assets / favicon.ico&#34;,所以我不知道发生了什么。
答案 0 :(得分:20)
我遇到了同样的错误。 它是由sprockets-rails 2.1.4引入的,不再需要favicon_link_tag的/ assets前缀。
可能由于某些原因,当spree 2.3.2发布时,sprockets-rails gem的版本为2.1.3。
我修复它编辑Gemfile.lock,手动将sprockets-rails的版本从2.1.4更改为2.1.3(在我的特定情况下,没有gems需要完全相同的版本,检查你的Gemfile.lock以确保!!!)。
我想在将来的版本中这将被修复,因此更新sprockets-rails gem不会再产生错误。