我正在尝试加载模型以将脏数据添加到商店,但似乎无法加载实际模型然后将setData加载到它...
这样做:
var model = Ext.ModelMgr.getModel("AT.model.Booking");
返回:
function () {
return this.constructor.apply(this, arguments);
}
这似乎不对。我发现了一个关于此的线索; http://www.sencha.com/forum/showthread.php?177658-How-to-get-a-single-model
以下错误报告指出它应该在以下版本中修复,但它似乎不是......我不确定如何集成错误报告中提到的修复...
答案 0 :(得分:1)
我不确定这是否是您想要完成的,但如果您想保存单个记录,请将模型从数据库中取出,然后调用save()。
var model = Ext.ModelManager.getModel('AT.model.Booking');
model.load(id, {
scope: this,
success: function(record) {
if (profile.dirty) {
profile.save();
}
},
failure: function() {
console.log('Something went wrong.');
},
});
答案 1 :(得分:0)
如果我错了,请纠正我,但传递给getModel
方法的论点是你想要获得的模型的id
。您似乎将它传递给模型的类名。
除非AT.model.Booking
是实际模型实例的id
。这对我来说似乎很奇怪,但那不属于我的事:P
答案 2 :(得分:0)
这是加载单个模型的方法。
var thing;
AT.model.Booking.load(thingId, {
success: function(rec) {
thing = rec;
}
});
问题是您必须在模型的“配置”部分设置代理设置。这个语法比整个“getmodel”更直接。