我有一个商店控制器和一个商品控制器,我希望每个商品都显示在商店/商店/商品/ ID下,我的路线文件是;
match 'store'=> 'store#index'
namespace :store do
resources :items, only: [:show]
end
当我链接到商店页面上的某个商品时,我会收到正确的网址,例如'store / items / 1'但是当我按照链接时出现错误
ActionController :: RoutingError at / store / items / 1 未初始化的常量商店
我不知道为什么我会收到这个错误...
答案 0 :(得分:1)
namespace
汇总模块,名称前缀和路径前缀。
但在您的情况下,您没有名为Store
的模块。它是一个控制器。也就是说,它正在寻找Store::ItemsController
。
请改用:
scope '/store' do
resources :items, only: [:show]
end
这将为您提供item_path
和URI /store/items/1