2013-10-26 34 views
0

Rails默認腳手架包含允許您發佈API的方法,允許用戶通過HTML和JSON與相同的控制器進行交互。Rails 4 API版本建議練習

生成與bodyurlrails generate scaffold products body:string url:string產品模型的新支架將使類似:

# GET /products 
# GET /products.json 
def index 
    @products = Product.all 
end 

,併產生既是一個HTML視圖,但也index.json.jbuilder

json.array!(@products) do |product| 
    json.extract! product, :body, :url 
    json.url product_url(product, format: :json) 
end 

Rails是明確自動生成所有的代碼,讓我們將這個模型作爲一個API公開,並提供我們的標準HTML接口。

我的問題(S)是:

  • 什麼是推薦的做法版本是這樣的?
  • 這種暴露API的方法真的是預期的做法嗎?
  • 我發現的所有其他資源都建議使用單獨的名稱空間控制器來公開API操作,那麼爲什麼要在默認設置中公開JSON和HTML?

回答