【发布时间】:2012-05-16 14:11:56
【问题描述】:
使用 Backbone 和 Tastypie 更新 Django 的用户属性(特别是 password 和 email)的正确方法是什么?
总的来说,在这两种情况下,从 API 的角度来看,什么是好的工作流程?
【问题讨论】:
标签: django backbone.js tastypie
使用 Backbone 和 Tastypie 更新 Django 的用户属性(特别是 password 和 email)的正确方法是什么?
总的来说,在这两种情况下,从 API 的角度来看,什么是好的工作流程?
【问题讨论】:
标签: django backbone.js tastypie
这种“单字段”更新由 PATCH HTTP 动词处理。所以你应该用这个方法和你想要更新的数据来做一个 Ajax 请求。
在 curl 中,它会是:
curl --dump-header - -H "Content-Type: application/json" -X PATCH --data '{"email": "new@email.com"}' "http://localhost:8000/api/v1/user/1/"
关于 Backbone,这不是必需的。您可以保留 User 模型并使用 sync 方法,但使用 Jquery.ajax() 调用就足够了。
jquery:
$.ajax({
type: 'PATCH',
url: http://localhost:8000/api/v1/user/1/,
data: "{'email': 'new@email.com'}",
success: function(){/* your logic */},
contentType: "application/json"
});
【讨论】: