我试图在不创建模型的情况下创建一个新的空记录。
不小心我试图运行这个:
new new storeComp.model()
它确实有效!
任何人都知道任何解决方案或它是如何工作的答案?
谢谢!沙列夫
未配置模型的商店将隐式创建一个匿名商店。这在implicitModel
私有属性的文档中进行了解释(存储需要知道,因为如果它使用隐式模型,它必须在它本身被销毁时将其销毁)。
最后,这意味着您可以放心地期望任何商店都有模型支持。
对于关联商店,我遇到了同样的问题。为此,我使用了以下 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": {}
将创建空模型。