我想在我的rails用户模型中添加一个新的更新(new_update)操作,它将更新模型中的单个列。哪个休息api方法我应该在路由文件中使用。我应该使用put或patch或两者兼而有之。
resources: users do
member do
put 'new_update'
patch 'new_update'
end
答案 0 :(得分:3)
如果要将100%与HTTP谓词定义匹配。
PUT应该完全用请求中的内容覆盖您的目标资源(请求中不存在的所有字段都应设置为删除/无效)。
PATCH应该只修改请求中发送的字段。
话虽这么说,大多数时候人们没有区别并使用其中任何一个(很多人甚至不知道有一个PATCH动词)是使用相同的PUT行为为PATCH(因为PUT的用例在imo上非常罕见)。