我剛剛升級到1.0.3
,我的config/routes文件夾中的routes.rb文件似乎忽略了所有我的自定義路由。將路線添加到Rails的Spree電子商務
我的routes.rb
JollyStore::Application.routes.draw do
# Mount Spree's routes
mount Spree::Core::Engine, :at => '/'
root :to => 'pages#index'
namespace :admin do
resources :wysiwygs
end
match 'about_us/', :to => "pages#about_us"
match 'services/', :to => "pages#services"
match 'raw_resources/', :to => "pages#raw_resources"
match 'contact_us/', :to => "pages#contact_us"
match 'privacy_policy/', :to => "pages#privacy_policy"
match 'return_policy/', :to => "pages#return_policy"
match 'refund_policy/', :to => "pages#refund_policy"
match 'cancellation_policy/', :to => "pages#cancellation_policy"
match 'delivery_shipping_policy/', :to => "pages#delivery_shipping_policy"
end
如果我運行bundle exec rake routes
,它返回所有選擇恰當的路線。但是,當我試圖達到的特定網頁,我得到:
undefined local variable or method `about_us_path'
或爲每一個環節就是我的自定義路線中同樣的錯誤。不知何故,我的路線被忽略。有沒有人知道一種方法來規避這個問題?
我發現,使用'main_app.my_route_path'打破了所有大禮包路線,除非他們用'spree.'前綴。該解決方案可以防止需要這樣做。 – Zubin 2013-05-15 00:54:10
@Zubin是的,main_app.my_route_path用於從Spree相關控制器/視圖訪問主應用程序路由。 要添加一個路線到狂歡,你可以使用我給出的解決方案。 – 2013-07-24 06:59:17
似乎prepend方法不再工作。看看@Ajay的答案 – 2015-06-22 15:07:52