我一直在阅读Backbone.sync和Backbone解析。我承认我很困惑。我有一个BB模型继承自另一个模型,并将所有属性发送到页面。我想限制它发送到页面的属性,现在它从数据库表发送所有内容(只需要id,fname,lname等)。此模型不会用于保存,仅供页面内的参考。我的问题是我是否覆盖Backbone.sync或解析,我是在继承模型还是“超级”模型上做的?
初次通话:
TSS.Principal = new TSS.Models.User(@Html.Raw(this.User.ToJson()));
继承主体将使用的模型:
TSS.Models.User = _.extend(TSS.Models.User, {
parse: function (response, options) {
this.set("roles", new TSS.Collections.Roles(response.Roles));
response.Roles = null;
return TSS.Models.User.parse.call(this, response, options);
}
});
实际“超级”型号:
TSS.Models.User = Backbone.Model.extend({
idAttribute: "Id",
urlRoot: TSS.Paths.Data + '/UsersApi'
});
答案 0 :(得分:1)
您应该使用此服务器端(在User.ToJson()
函数中)并防止数据被发送到客户端JavaScript代码。