mat*_*owe 10 ruby ruby-on-rails spree
我正在本地开发环境中建立我的第二个"狂欢"商店,使用Spree gem for RubyOnRails处理电子商务项目.
第一个商店工作,但当我关闭store1的"rails服务器"并尝试为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行引发:
传递给帮助者的资产名称不应包含"/ assets /"前缀.而不是"/assets/favicon.ico",请使用"favicon.ico"
提取的来源(第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' %>
Run Code Online (Sandbox Code Playgroud)
模板包含的跟踪:/Users/pivot/.rvm/gems/ruby-2.0.0-p481/gems/spree_frontend-2.3.2/app/views/spree/layouts/spree_application.html.erb
这个错误来自一个狂欢视图文件,而有问题的行实际上只是传入"favicon.ico"而不是"assets/favicon.ico",所以我不知道发生了什么.
小智 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将不会产生更多错误.