2009-08-31 14 views
1

這是我在這個網站上的第一篇文章,但我一直都在通過其他用戶在這裏獲得我的問題的答案,所以非常感謝。Rails應用程序的適當RESTful路由?

那麼,實際上我正在創建一個Web應用程序,特別是在軌道上。 所有的模型結構都已經構建好了,現在我假裝開始構建控制器和路由。所以,我有幾個關於建立這些路線的正確方法的問題。

我做的第一件事是通過一些不錯的應用程序進行搜索,並檢查他們如何構建他們的路由結構。 Twitter有很好的,我注意到他們爲每個登錄創建一個會話,以下所有路由都基於根級別,因此用戶/帳戶被繼承。 (即:http://twitter.com/status/update


好了,我的應用程序的主要結構是:

帳戶/博客/#{ID} /頁/#(編號) ...等等...

實際上,帳戶所有者可以是開發人員,也可以是簡單的用戶,而開發人員可以處理更多功能。 但是它與開發人員:attr 開發者:布爾設置其權限相同。

帳戶{:ID,username和:電子郵件:開發商}

所以我的問題是: 什麼是創造了一些不錯的路線,如果我有兩個不同的類型來創建此帳戶的最佳方式用戶/開發人員

我在想,如果這是正確的:

/帳號/簡單的用戶

/帳號/創建類型=爲開發商開發

我可以使用額外的創建?在發佈請求中聲明的參數,或者至少在GET上顯示錶單?


,並在同一時間,我查了一些指南和我讀到一些 的RESTful路由 在這裏我們可以有這樣的事:

賬戶/ 1 /博客/ 1 /頁/ 1

但例如,stackoverflow.com wesite作用是這樣的:

/用戶/ 165750/ludicco/users/edit/165750

所以它使用的順序有點不同。這是一個適當的格式化的方式來做到這一點?


很抱歉,但我有點失去了,所以我不知道如何在這個領域繼續呢。 任何幫助或提示,將不勝感激。

在此先感謝

回答

1

不幸的是,有人起步,沒有任何法律提供指導。通過閱讀一些建議,你可能已經儘可能多地完成了。就個人而言,如果我要安寧,我會盡可能避免會話,並將信息放入網址中。

創建:由於您發佈的名稱/電子郵件/等。數據,我也會發布開發者標誌。我需要更多地瞭解你的表單來說明開發者參數是否是一個好主意;在這種情況下真的沒什麼關係。我想說,如果它是註冊表單視圖中的一個標誌,則該參數很好,如果它們是真正不同的頁面,則不同的基本URL會更有意義。

常規頁面:您的accounts/1/blogs/1/pages/1對於人類來說非常明確,並且在機器上也應該很容易。 Stackoverflow使用更簡潔的符號,並提供一些冗餘信息來幫助人類和搜索引擎。使用任何你喜歡的更好。

+0

嗯,這對賈斯汀非常有幫助,謝謝你。我會繼續閱讀更多關於REST的內容,以便我能夠獲得。最初我讀過這篇文章wonderfullyflawed.com/2009/07/...這讓我想到了將來可能用作API,所以我從那裏得到了一些想法。因爲這對我很有幫助。這對我來說是一個全新的世界,但我真的很喜歡它,因爲這並不難,我只是想知道如何做正確,但正如你所說,對於初學者來說這是一種持續的事情,我可以在以後繼續修改我的代碼。非常感謝賈斯汀 – zanona 2009-08-31 14:58:17