解析关系型查询 - SWIFT 3
问题描述:
Reports - objectID, Title, Date & relationItem (Relation type column linked up to Items)
Items - ObjectID, Title, Date etc
我想查询所有Items
是在报告等于objectID
。用户创建报告然后添加项目给他们。这些项目可以在Items表中找到。
我已经看过了https://parseplatform.github.io/docs/ios/guide/#relations,但没有看到任何swift3。
我已经尝试了一些东西,但收效甚微。我在下面找到了这个snipplet,但不知道如何将它应用于我的课程。
var relation = currentUser.relationForKey("product")
relation.query()?.findObjectsInBackgroundWithBlock({
很想有人直接将我到正确的方向!由于
试过下面这太代码!
var query = PFQuery(className:"Items")
query.whereKey("relationItem ", equalTo: PFObject(withoutDataWithClassName:"Reports", objectId:"MZmMHtobwQ"))
答
行,所以我不得不改变表稍微得到这个工作,以防止query
一个query
内。
我添加了一个relation Type
到Items
表,而不是Reports
表
然后我设法取回所有基于该report ObjectId
这样的Items
:
let query = PFQuery(className:"Items")
query.whereKey("reportRelation", equalTo: PFObject(withoutDataWithClassName:"Reports", objectId:"3lWMYwWNEj"))
这就工作。请注意,reportRelation
是关系类型列。 感谢
答
当你考虑一个一对多的关系,是否执行指针或数组,有几个因素要考虑。首先,这种关系涉及多少物体?如果关系的“多”一方可能包含一个非常大的数量(大于100个)的对象,那么您必须使用指针。如果对象的数量很小(低于100左右更少),那么阵列可以更方便,特别是如果你通常需要获得所有相关的对象(“多”,在“一个一对多的关系”)同时作为父对象。
http://parseplatform.github.io/docs/ios/guide/#relations
如果您正在使用一个工作到一对多的关系,使用指针或数组。有关示例和更多解释,请参阅指南。
感谢您的评论。但许多报告可以有相同的项目。所以这会更多的是多对多的关系。 – Cliffordwh