2011-10-04 34 views
3

我注意到了我一直在使用的教程中的模式。當創建註冊表單時,使用UsersController並且總是有特定的操作,例如新的,創建,編輯,更新,銷燬。儘管我對使用這些操作的原因有了一些瞭解,但我發現自己變得困惑。我在哪裏可以閱讀關於軌道上紅寶石的REST?

任何人都可以指向我可以瞭解REST和「約定優於配置」的文檔或截屏視頻。看到我進入鐵路幾個月後,我仍處於學習的早期階段,現在是適應一些良好習慣的好時機。

我正在註冊系統,並已到達構建密碼重置階段。我將着手創建一個密碼控制器,但需要有一個用於輸入密碼的表單。我可以對這個權利使用「new」操作,並創建我的User模型/類的新實例,並將其存儲在實例變量@user中,以便我的視圖可以訪問它。我知道像這樣的工作......但不明白爲什麼它必須在一個新的行動。它不會在一個名爲「重置」或「狗」的行動下工作嗎?

是否有一個原因,我把代碼來幫助創建/存儲數據庫中的用戶創建操作?或者這只是一個很好的做法,因爲它能幫助我乍一看明白到底發生了什麼?這是否可以利用軌道功能,例如路由...資源?

我試圖瞭解更多..

預先感謝答覆..

回答

3

嘗試這些這個鏈接 - http://en.wikipedia.org/wiki/Representational_state_transfer

你會得到一個更好地瞭解REST的實際含義和爲什麼它的好。此外,新的操作,編輯,創建,更新,刪除,索引只是Rails實現「約定優於配置」的方式。 如果您想使用自定義名稱的操作,則需要進行一些配置。

這會幫助你 - http://railscasts.com/episodes/35-custom-rest-actions

讓我知道這是有幫助的。

Sahil

2

六個核心REST控制器動作真的很好的Agile Web Development with Rails書定義。這就是我對創建,讀取更新,銷燬行爲,以及我之前所看到但從未理解,編輯和新的行爲有非常清晰的理解的地方。我強烈建議將其作爲一個起點 - 他們有一個完整的專門部分。

+0

非常感謝,我真的有那本書。我會看一看。 – LondonGuy

+0

@Psychonetics我沒有馬上拿到它,但我發現編輯/新行動的解釋是無價的。其他所有東西都是有道理的,但那些需要一點理由。 – Nic