我有两个数据模型:Writer.AttributValeur和Writer.Produit.
Writer.Produit有HasMany/ BelongsTo有关系Writer.AttributValeur.
因此定义是这样的:
Ext.define('Writer.AttributValeur', {
extend: 'Ext.data.Model',
fields: [{
name: 'id',
type: 'int',
useNull: true
},
'description',
'val'
],
belongsTo: 'Writer.Produit'
});
Ext.define('Writer.Produit', {
extend: 'Ext.data.Model',
fields: [{
name: 'id',
type: 'int',
useNull: true
},
'titre',
'description'
],
hasMany: {
model: 'Writer.AttributValeur',
name: 'attributs'
}
});
var store = Ext.create('Ext.data.Store', {
model: 'Writer.Produit',
autoLoad: true,
autoSync: true,
proxy: {
type: 'ajax',
api: {
read: 'json/liste_view/',
create: 'json/item/?mode=create',
update: 'json/item/?mode=update', …Run Code Online (Sandbox Code Playgroud) 我是Extjs 4的新手,我试图了解如何为具有嵌套对象的数据创建模型。
示例数据:
{
data1:{
field1:1,
field2:2,
**objField1**:{
objField1:1,
objField2:2,
**anotherObj**:{
field1:1,
field2:2,
arrayofObjs:[
{
//...
},
//...
]
}
},
objField2:{
//... Some more fields or objects
},
data2:{
//...
}
}
Run Code Online (Sandbox Code Playgroud)
我试图了解如何对这些数据进行建模。领域很容易
Ext.define('MyModel', {
extend: 'Ext.data.Model',
fields: [
{name: 'field1', type: 'int'},
{name: 'field2', type: 'int'}
], //...
Run Code Online (Sandbox Code Playgroud)
但是如何建模对象?我当时以为可以为子对象和设置关联创建模型,但是在阅读了文档之后,它们似乎需要具有ID。因此,如果您查看belongsTo页面,则“所有者模型应具有引用关联模型主键的外键”。
我不是要对具有外键关系的数据进行建模,而只是对带有子对象的对象进行建模。因此,服务器可能会返回一个带有多个子对象的JSON对象,而我可能想要将其绑定到网格的那些对象之一,将另一个对象的数据绑定到一个选择框,等等。
谢谢!