我尝试运行命令rake routes
,我得到以下列表。
F:\My-Projects\Personal\odot>rake routes Prefix Verb URI Pattern Controller#Action todo_list_todo_items GET /todo_lists/:todo_list_id/todo_items(.:format) todo_items#index POST /todo_lists/:todo_list_id/todo_items(.:format) todo_items#create new_todo_list_todo_item GET /todo_lists/:todo_list_id/todo_items/new(.:forma t) todo_items#new edit_todo_list_todo_item GET /todo_lists/:todo_list_id/todo_items/:id/edit(.: format) todo_items#edit todo_list_todo_item GET /todo_lists/:todo_list_id/todo_items/:id(.:forma t) todo_items#show PATCH /todo_lists/:todo_list_id/todo_items/:id(.:forma t) todo_items#update PUT /todo_lists/:todo_list_id/todo_items/:id(.:forma t) todo_items#update DELETE /todo_lists/:todo_list_id/todo_items/:id(.:forma t) todo_items#destroy todo_lists GET /todo_lists(.:format) todo_lists#index POST /todo_lists(.:format) todo_lists#create new_todo_list GET /todo_lists/new(.:format) todo_lists#new edit_todo_list GET /todo_lists/:id/edit(.:format) todo_lists#edit todo_list GET /todo_lists/:id(.:format) todo_lists#show PATCH /todo_lists/:id(.:format) todo_lists#update PUT /todo_lists/:id(.:format) todo_lists#update DELETE /todo_lists/:id(.:format) todo_lists#destroy root GET / todo_lists#index
这些网址是如何生成的?我回头看config/routes.rb
并且只找到这些线。
Odot::Application.routes.draw do
resources :todo_lists do
resources :todo_items
end
root 'todo_lists#index'
end
例如:
todo_lists#destroy DELETE /todo_lists/:id(.:format)
如何为destroy事件自动生成此url?。
答案 0 :(得分:1)
在Rails中,resources
路由是定义RESTful路由的简短方法。它将为您提供数据库中CRUD操作的完整实现。
请参阅此处的文档:CRUD, Verbs, and Actions
答案 1 :(得分:0)
那些是宁静的路线,"资源"您的路线文件中的行添加它们。 您可以找到有关here
主题的更多信息