2013-01-08 52 views
3

在Rails中,您是否應該能夠使用URL更新字段。 那叫做RESTful嗎?rails RESTful更新

例如,應該類似於此工作來更新workorder.wostatus_id for id = 2的工單嗎?

http://localhost:5000/workorders/2?wostatus_id=4 

謝謝!

回答

1

如果您提供了不應該工作的更新應該通過PUT請求執行,但是如果通過PUT請求了URL,那麼它應該可以工作。

記住的想法是:

  • GET訪問和檢索數據
  • PUT更新數據
  • POST來創建數據
  • DELETE刪除數據

編輯:通常實際的參數名稱可能會有所不同尋找控制器的實現,所以在rails中你經常會發現?workorder[wostatus_id]=4,它將引用模型名稱。

1

您將不得不調用URL來執行任何更新,但您需要使用POST或PUT請求。 POST創建,PUT更新,但我相信Rails對PUT使用「data-action」屬性,然後在幕後實際調用POST。

只要將URL放在瀏覽器中,就像您提供的URL一樣,默認情況下會執行一個GET請求,該請求不應該用於更改數據,只能用於檢索它。

這裏有一個很好的教程,說明REST的基本知識:REST API tutorial

Rest for Rails screencast是非常有益的,也是如此。