我试图在不创建模型的情况下创建新的空记录。
无意中我试图运行这个:
new new storeComp.model()
它实际上有效!
任何人都知道这方面的任何解决方案或它是如何工作的答案?
谢谢! 沙莱夫
答案 0 :(得分:7)
未配置模型的商店将隐式创建匿名商店。这在implicitModel
私有属性的文档中有解释(商店需要知道,因为如果它使用隐式模型,它必须在它本身被销毁时销毁它。)
最后,这意味着您可以安全地期望使用模型支持任何商店。
答案 1 :(得分:1)
我遇到了关联商店的同样问题。为此,我使用下面的JSON格式来加载项目存储。因此,在关联(项目资源)存储中创建自动空记录。
商品强>
Ext.define('App.store.Projects', {
extend : 'Ext.data.Store',
model : 'App.model.Project'
});
<强>型号:强>
Ext.define("App.model.Project", {
extend: 'Ext.data.Model',
idProperty : 'id',
uses : ['App.model.ProjectResource'],
fields: [
{ type: 'auto', name: 'id'},
{ type: 'number', name: 'customerid'},
{ type: 'string', name: 'projectcode'}
],
associations: [
{type: 'hasMany', model: 'App.model.ProjectResource', name: 'Resources', storeConfig: { remoteFilter: true }}
]
});
Ext.define("App.model.ProjectResource", {
extend: 'Ext.data.Model',
idProperty : 'id',
fields: [
{ type: 'number', name: 'id'},
{ type: 'string', name: 'name'},
{ type: 'number', name: 'projectid'},
{ type: 'auto', name: 'resourceid'}
],
associations : [
{type : 'belongsTo', model: 'App.model.Project'}
]
});
JSON格式:
[
{
"id": "105",
"customerid": "105",
"projectcode": "ALN01",
"Resources": {}
}
]
使用空对象(如"Resources": {}
)加载商店将创建空模型。