我有點難以想出正確的答案,所以我會在這裏請求我的問題。我正在研究一個RESTFul API。當然,我擁有多種資源,其中一些由父母與子女的關係組成,其中一些是獨立的資源。我遇到困難的一點是如何讓那些將建立客戶端以對抗我的API的人變得更容易。Ruby on Rails URL(RESTful API)中的資源映射
情況是這樣的。假設我有一個'街道'資源。每條街道都有多個房屋。 So Street:has_many到家和家園:belongs_to Street。如果用戶想要請求對特定資源的家一個HTTP GET,下面應該工作:
http://mymap/streets/5/homes/10
,它允許用戶以獲取一個家庭信息與ID 10直線前進。我的問題是,我是通過向用戶訪問打破了本書的規則:
http://mymap/homes/10
技術上的那家資源自身存在的不街道。它使得感覺它存在作爲它自己的實體沒有封裝街道,即使業務邏輯說,否則。
處理這個問題的最佳方法是什麼?
編輯!本着成爲一名優秀的StackOverflow公民的精神,我回來了一個支持的代碼塊,以瞭解如何在上面實現它們。
map.resources :streets,
:has_many => :homes
:shallow => true
這將創建兩種類型的路線,我一直在尋找。
這個淺的選項很有趣。 – tadman 2010-04-11 05:53:49