例如,让我们考虑一下我有以下课程:
Item
ItemProperty
这将包括诸如Colour
和之类的对象Size
。类的关系属性Item
列出了ItemProperty
适用于该项目的所有对象(即,对于一个项目,您可能需要指定颜色,而对于另一个项目,您可能需要指定大小)。ItemPropertyOption
将包括Red
,Green
(forColour
) 和Big
,Small
(forSize
) 等对象。
然后Item
Object 将与 an 相关ItemProperty
,而ItemChoice
Object 将与 an 相关ItemPropertyOption
(并且可以推断出所指的)ItemProperty
。ItemPropertyOption
这样做的原因是我可以更有效地使用查询。即给我所有的项目选择是Red
。它还允许我使用 Parse Dashboard 快速将元素添加到站点,因为我可以轻松地指定更多ItemProperty
s 和ItemPropertyOption
s,而不必将它们添加到代码库中。
这只是一个小例子,还有更多我想使用类的实例,以便表单中各种下拉列表的“选项”在数据库中,并且可以由我轻松添加和编辑,而不是硬编码.
1)我可能会以类似的方式对 5 种以上类似的类结构进行此操作
2)可能有数百个我想通过“反向查询”访问的嵌套属性</p>
因此,我可以想到 2 个导致效率低下的潜在原因,并想知道它们是否成立:
有很多课程效率低下吗?
对嵌套类的反向查询效率低下吗?
我能想到的另一个选择——如果“类膨胀”确实是一个问题——是在父类上创建字段,而不是嵌套在其他类中(代表进一步的属性,如上所述),只是将它们表示为直接嵌套 JSON 属性。