Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js Ember文档-只读嵌套数据_Ember.js_Ember Data - Fatal编程技术网

Ember.js Ember文档-只读嵌套数据

Ember.js Ember文档-只读嵌套数据,ember.js,ember-data,Ember.js,Ember Data,我一直在阅读2.4版的Ember文档,遇到了一个我不理解的部分: 某些模型的属性可能是只读数据的深度嵌套对象。天真的解决方案是为每个嵌套对象定义模型,并使用hasMany和Belongs重新创建嵌套关系。然而,由于只读数据永远不需要更新和保存,这通常会导致创建大量代码,但几乎没有什么好处。另一种方法是使用不带转换的属性(DS.attr())定义这些关系。这样可以轻松访问计算属性和模板中的只读值,而无需定义无关模型 在我的用例中,我将只显示数据,而不会将其保存回服务器。我找到的每个嵌套数据示例都显

我一直在阅读2.4版的Ember文档,遇到了一个我不理解的部分:

某些模型的属性可能是只读数据的深度嵌套对象。天真的解决方案是为每个嵌套对象定义模型,并使用hasMany和Belongs重新创建嵌套关系。然而,由于只读数据永远不需要更新和保存,这通常会导致创建大量代码,但几乎没有什么好处。另一种方法是使用不带转换的属性(DS.attr())定义这些关系。这样可以轻松访问计算属性和模板中的只读值,而无需定义无关模型


在我的用例中,我将只显示数据,而不会将其保存回服务器。我找到的每个嵌套数据示例都显示了为每个嵌套级别设置单独的模型,然后设置关系,称为“原始解决方案”。那么正确的方法是什么呢?有人能为我详细介绍一下吗?提前谢谢

看看这些评论,答案是:

定义根对象并将该对象的字段定义为DS.attr()。没有类型信息

您仍然可以使用点表示法访问嵌套数据,但不需要再指定任何结构

有关此主题的更完整信息,请查看以下链接


这些数据来自哪里?如果不是持久化到服务器,它不是<代码> ds.Atter()/<代码>,它只是一个规则的散列。这为我澄清了:@ AlxAlAlA,你可以考虑把你的发现作为对你自己问题的答案,让其他人从中受益,如果他们遇到同样的情况。截至我的评论,你的问题已经被投票7次了。请看这里。