在Rails中,您是否应该能够使用URL更新字段。 这叫做RESTful吗?
例如,如果类似于此工作更新workorder.wostatus_id for work = id = 2?
http://localhost:5000/workorders/2?wostatus_id=4
谢谢!
答案 0 :(得分:1)
您必须调用URL来执行任何更新,但您需要使用POST或PUT请求。 POST创建,PUT更新,但我相信Rails为PUT使用“data-action”属性,然后在幕后实际调用POST。
只需将URL放在浏览器中,就像您提供的那样,默认情况下会执行GET请求,该请求永远不会用于更改数据,只能检索它。
这是一个很好的教程,解释了REST的基础知识:REST API tutorial
Rest for Rails screencast也非常有帮助。
答案 1 :(得分:1)
如果你提供了不应该工作的情况,因为更新应该通过PUT
请求执行,尽管如果通过PUT
请求了网址,那么它应该有用。
记住这个想法是:
GET
访问和检索数据PUT
更新数据POST
创建数据DELETE
删除数据编辑:实际的参数名称通常会因控制器实现而有所不同,因此在rails中经常会找到?workorder[wostatus_id]=4
,它会引用模型名称。