为了理解大量的核心数据,我正在努力开发各种可能的场景来开发可扩展的模型,以某种方式确保未来..
其中我有一个情况,有很多方法可以做到,我正在寻找一种最有效的方式。
我在做什么:
ControllerEntity {
title:String;
关系:家长(to-many)
}
ParentEntity {
title:String;
关系:孩子(to-many)
关系:控制器(to-one)
}
ChildEntity {
价值:NSNumber;
关系:父母(to-one; inverse)
}
现在请考虑这些随机公式..
A (parentEntity) = Alpha (child) + Beta (child) + Gamma (child)
B (parentEntity) = Pi (child) + Gamma (child) + Beta (child)
将A和B作为父对象并添加这些对象与它们各自的子集完全没有问题,
值得注意的是,Beta子节点存在于两个父实体中。
Gamma (child) = [Alpha (child) + Beta (child)] / 2
两个实体中的Alpha和Beta子对象都是相同的,因此只能是一个!
将Gamma作为父母广告并将这两个作为他们的孩子和计算添加起来似乎相当容易。但是(虽然这是一个简单的方法)对未来的证明并不好..太多的物品总是一个坏主意..
因此,我想找到一个ChildEntity会有的关系......有点自己(如果可以的话)。例如, Gamma 的子实体会自动从 Alpha 子元素和 Beta 子元素中获取其值。
所有这些关系都应满足某些条件:
最后,当我决定将这些数据导出或转换为xml时,它不应该让人感到困惑。
作为核心数据的新手,我发现很难从sqlite中思考,但我正在努力。
感谢任何帮助