【发布时间】:2021-04-10 18:39:26
【问题描述】:
我使用 back4app 作为我的后端环境,它几乎类似于 Parse。
我想问一些关于组织数据模型关系的问题。让我补充几句关于我的结构:
我有一个User 数据模型和一个Project 数据模型。项目可以包含许多 User 记录。当我想将用户放入一个项目时,我将其包装到另一个名为 ProjectUser 的数据模型中。当User 可以是整个系统的一部分并且User 可以只是较小事物的一部分(例如我描述的Project 组件)时,我需要它来分离级别。
ProjectUser 类有一个User 和Project 作为关系(不确定我是否需要在这里使用指针):
所以现在看起来我可以使用 Project 键过滤 ProjectUser 并在适当的项目中获取所有需要的用户。
我的问题是我需要使用这种过滤方法还是需要在 Project 类中添加一个具有 Array 类型的新列,并在每次添加新的 ProjectUser 时附加这个数组到目的地项目?我的Project 类可以只包含另一个自定义类的数组吗?
总结一下:
- 我需要使用指针而不是关系吗?
- 创建包含两个自定义类的附加对象 (
ProjectUser) 是否更好,或者可以在 Project 数据模型中使用数组来检索所有Users或ProjectUsers。
【问题讨论】:
-
关系是多对多关系。由于您已经有一个联合类 (ProjectUser),因此您应该在这个联合类中使用指向 User 和 Project 的指针。另一种方法是使用从 Project 类到 User 类的名为 users 的关系(不使用联合类)。您可以在此处查看有关您拥有的选项的更多详细信息:docs.parseplatform.org/ios/guide/#relations
-
感谢宝贵的 cmets 帮助很大!
-
@DaviMacêdo 您可以将其发布为我会接受的答案。谢谢!
标签: ios swift core-data parse-platform back4app