我一直在阅读v2.4的Ember文档,我遇到了一个我不理解的部分:
某些模型的属性可能是只读数据的深层嵌套对象。天真的解决方案是为每个嵌套对象定义模型,并使用hasMany和belongsTo重新创建嵌套关系。但是,由于只读数据永远不需要更新和保存,这通常会导致创建大量代码,而收益甚微。另一种方法是使用不带变换的属性(DS.attr())定义这些关系。这样可以轻松访问计算属性和模板中的只读值,而无需定义无关模型的开销。
在我的用例中,我只会显示数据,它永远不会保存回服务器。我找到的嵌套数据的每个例子都显示为每个嵌套级别设置单独的模型,然后建立关系,称为“天真的解决方案”。那么正确的方法是什么呢?任何人都可以请我为此扩展一下吗?提前谢谢!
答案 0 :(得分:0)
看看评论,答案是:
定义根对象并将该对象的字段定义为DS.attr()。没有类型信息。
您仍然可以使用点表示法访问嵌套数据,但不需要再指定任何结构。
请查看以下链接,以便更全面地了解此主题。
https://thejsguy.com/2016/01/29/working-with-nested-data-in-ember-data-models.html