You need to do in routes.rb:
Spree::Core::Engine.routes.prepend do
get '/about', :to => 'about#index', :as => :about
end
or without the Spree::Core
scope:
get '/about', :to => 'spree/about#index', :as => :about
Because, you have your about_controller.rb i.e. AboutController
defined inside Spree
module. And, hence you'll have to reference the spree namespace in your route to set it properly.
In your views:
<li id="about-link" data-hook><%= link_to Spree.t(:about), spree.about_path %></li>
or
<li id="about-link" data-hook><%= link_to Spree.t(:about), main_app.about_path %></li>