2012-08-08 81 views
18

Rails自動添加的路徑是什麼?假設你有一個問題資源,你會自動獲得questions_path,question_path等。我在哪裏可以看到他們的解決方案和我得到的結果?動態路徑助手欄杆

回答

34

如果你想創建show行動幫助這部分可能會有所幫助http://guides.rubyonrails.org/routing.html#specifying-a-controller-to-use

Verb Path    Action  Helper 

GET  /photos   index  photos_path 
GET  /photos/new  new  new_photo_path 
POST /photos   create  photos_path 
GET  /photos/:id  show  photo_path(:id) 
GET  /photos/:id/edit edit  edit_photo_path(:id) 
PUT  /photos/:id  update  photo_path(:id) 
DELETE /photos/:id  destroy photo_path(:id) 

你可以寫

photo_path(@photo.id) 

其中@photo是你的模型對象。或者,如果它響應id方法,則可以直接通過@photo

photo_path(@photo) 
edit_photo_path(@photo) 

您也可以加載rails console(端),以及使用app像測試路由,以便app.photo_path(1)(它會告訴你用id照片的路線等於1

8

只需使用:

rake routes 

這將列出定義的所有路線。第一列與你的路徑助手相關。

+0

[here](http://guides.rubyonrails.org/routing.html#seeing-existing-routes-with-rake)是什麼'rake routes'給你的詳細解釋 – 2012-08-08 11:27:12

+0

我看不到這是怎麼回事顯示我可以作爲參數傳遞給幫手等? – LuckyLuke 2012-08-08 12:22:57

+0

@Dude,看我的更新 – evfwcqcg 2012-08-08 13:46:08

0

如果您在在下面的routes文件:

resources :questions 

然後Rails提供以下寧靜的路線你:

GET  /questions   index  list of questions 
GET  /questions/new  new   show new question form 
POST /questions   create  create a new question 
GET  /questions/:id  show  show a specific question 
GET  /questions/:id/edit edit  show form to edit question 
PUT  /questions/:id  update  update a specific question 
DELETE /questions/:id  destroy  delete a specific question 

您還可以運行rake:routes來查看正在生成的內容。