我的路线如下:
resources :products
现在我的所有代码都已到位,但只需要更改/products/:action to /items/:action
我已经浏览了rails docs,但无法解决这个问题。它看起来很基本,应该很容易,但我不能把手指放在它上面。
我使用的网址是:http://guides.rubyonrails.org/routing.html#path-and-url-helpers
答案 0 :(得分:14)
您可以这样写下您的路线:
resources :products, path: 'items'
这将使用/items
生成product_*
个ProductsController
个名为帮助者的路由。看看this part of the Routing Guides。
答案 1 :(得分:9)
有几种方法可以实现这一目标。一种是简单地命名资源items
并使用:controller
选项指定控制器。
resources :items, controller: 'products'
这将识别以/items
开头但路由到ProductsController
的传入路径。它还将根据资源名称生成路线助手(例如items_path
和new_item_path
)。
另一种方法是在指定@dgiperez指出的资源时使用:path
选项。
resources :products, path: 'items'
这也会将以/items
开头的路径路由到ProductsController
,但由于路由助手基于资源名称,因此它们将基于产品(例如{ {1}}和products_path
)