2014-12-19 145 views
1

我开始使用解析,并且我有一个关于解析对象关系的简单问题。解析一对多关系更新

我有两个类:FlightPilot

飞行员可以有很多航班,但飞行可能只有飞行员。因此,它是像这样一个一对多的关系:

Pilot < ---- >> Flight 

如果我到Flight添加Pilot为指针对象,那么做我需要手动添加相同FlightPilot记录?

如果我在Parse Data Browser中设置了这个关系,我需要在两端添加关系吗?

目前,我已经在数据浏览器中添加了一个名为Pilot的关联字段,称为航班。我还为称为飞行员的Flight类添加了指针字段。如果在我的应用程序中,我在我的飞行对象上设置了飞行员指针,并将其保存在Parse数据浏览器中,如果我选择了我的飞行员的关系字段,它将显示与我添加飞行员的飞行无关。想法?它似乎只有一种方式。

我是否只需要将飞行员指针添加到我的航班并且该关系会自动生成?

任何帮助,非常感谢。

+0

https://www.parse.com/questions/inverse-relationship-support – shim

回答

0

对于在Parse中工作的一对多查询,您只需要将该属性添加到一侧。将flights属性添加到Pilotpilot属性到Flight。我的建议是将pilot属性添加到Flight,因为它只是一个对象而不是一组对象。

现在,您“可以”添加这两个属性,但这通常不是必需的,Parse会将它们视为单独的关系,这意味着您必须管理两个方向。

+0

感谢这一点,现在变得更有意义。对于多对多关系来说,这是一个类似的情况吗? –

+0

多对多会变得更复杂一些。为此,您可能需要考虑连接表。也就是说,一个表格保存了两个对象之间的关系。在你的例子中,你可能会有一个名为“flightAssignment”的表格,其中包含对“航班”和“船员”的引用。这也使查询容易,因为你可以做这样的事情:找到所有flightAssignments其中flight = ?,或找到所有flightAssignments其中crewMember =? – picciano

+0

没有必要使用连接表。 PFRelation也适用,解析团队建议使用它。当你有关于关系的一些特定信息时,联接表是必要的。例如关系创建时的日期等。 –