我在 Backbone 中建立了一个简单的用户模型
define([
'underscore',
'backbone'
], function(_, Backbone) {
var UserModel = Backbone.Model.extend({
urlRoot: '/api/user',
idAttribute: '_id',
defaults: {
userName: '',
password: ''
personalDetails: {
title: '',
name: {
firstName: '',
lastName: ''
},
gender: '',
dob: ''
}
}
});
return UserModel;
});
调用save()
模型将发出一个 PUT 请求,/api/user/:id
这很好。
但是,在前端我想要 3 种形式 - updatePersonalDetails
, updateUserName
, updatePassword
.
在我当前的实现中,这些都将使用相同的模型并且都使用save()
相同的端点/api/user/:id
。我的问题是我不知道用户发布的表格。
什么是这个问题的最佳解决方案,同时仍然符合 RESTful 标准?有 3 个单独的模型 -UserDetailsModel
等UserPasswordModel
?或者只对整个模型进行批量更新,无论用户发布哪种形式。