在 Rails 中,您是否可以使用 URL 更新字段。那叫RESTful吗?
例如,是否应该使用与此类似的东西来更新 id=2 的工作订单的 workorder.wostatus_id?
http://localhost:5000/workorders/2?wostatus_id=4
谢谢!
在 Rails 中,您是否可以使用 URL 更新字段。那叫RESTful吗?
例如,是否应该使用与此类似的东西来更新 id=2 的工作订单的 workorder.wostatus_id?
http://localhost:5000/workorders/2?wostatus_id=4
谢谢!
您必须调用 URL 来执行任何更新,但您需要使用 POST 或 PUT 请求。POST 创建,PUT 更新,但我相信 Rails 对 PUT 使用“data-action”属性,然后实际上在幕后调用 POST。
只需将 URL 放入浏览器中,就像您提供的那样,默认情况下会执行 GET 请求,该请求永远不应该用于更改数据,只能用于检索它。
这是一个很好的教程,它解释了 REST 的基础知识:REST API 教程
Rails 截屏视频的其余部分也很有帮助。
在您提供的情况下,它不应该工作,因为更新应该通过PUT
请求执行,尽管如果 URL 是通过请求的,PUT
那么它应该可以工作。
记住这个想法是:
GET
访问和检索数据PUT
更新数据POST
创建数据DELETE
删除数据编辑:实际参数名称通常会因控制器实现而异,因此在您经常发现的 rails?workorder[wostatus_id]=4
中,它将引用模型名称。