具有关系的模型的继承(hasOne和hasMany)

时间:2017-07-03 11:11:02

标签: extjs

如何从具有hasOnehasMany关系的模型继承?有必要保持这些关系。

我在沙盒中做了一个例子:https://fiddle.sencha.com/#view/editor&fiddle/22fi

模型Fiddle.model.User2继承自Fiddle.model.User

在文件app.js User2中,我连接到存储库。如果您连接User,那么一切都会正常。但是在使用User2模型时,链接不起作用:getAddress()方法返回空,getUser()方法不起作用。

2 个答案:

答案 0 :(得分:1)

Sencha技术支持解答

不幸的是,目前不支持此功能。 但我们确实有一个开放功能请求来添加此功能。

请不要因为它是功能请求而不是错误,因此无法保证何时或是否会将其添加到框架中。

答案 1 :(得分:0)

来自the code,他们要么忘记了,要么不支持。要获得明确答案,您必须使用Sencha支持制作门票。从当前类和父类混合在一起的所有函数都有一个包含父类的proto参数:

    Model.initIdentifier(data, cls, proto);
    Model.initFields(data, cls, proto);
    Model.initValidators(data, cls, proto);

虽然协会没有原型参数,所以它们只取自当前的类:

        Model.initAssociations(schema, data, cls);

但是,这可能完全有可能是预期的行为。例如,文件fields明确指出:

  

扩展Model类将继承超类/祖先类中的所有fields

虽然是例如hasOne州(我强调):

  

模型的一个或多个Ext.data.schema.HasOne关联。

请向Sencha支持部门寻求澄清。