ios - 使用 Parse 在消息应用程序中存储消息和讨论
<p><p>我正在使用 Parse 作为后端为 iOS 创建一个消息传递应用程序,并且我正在尝试提出用于存储消息/讨论的架构。存储消息是直截了当的,但人们是如何存储讨论的,因为讨论涉及一组具有一个或多个用户的消息,并且可以作为一个整体被删除。这只是对消息类的巧妙查询,还是整个类本身?</p>
<p>使用 Parse 的 Messages 类和 Discussions 的典型架构是什么样的?</p>
<p>提前感谢您的帮助! </p>
<p>PS。谁能推荐任何非常好的第三方库来制作类似于 Facebook Messenger 的消息屏幕。</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>如果您使用 Parse 作为后端,那么最适合您的功能是 PFRelation。对于您的 _User 对象,您可以拥有 PFRelation 类型的属性,目标类为 Discussions(您的自定义类,您可以随意调用)。一个 Dicussions 对象本身可能有一个带有某种数组的属性,参与该讨论的人,只有他们的 objectIds(可能是“参与者”)。还有另一个包含消息“数组”的属性(从技术上讲,这将是一个 PFRelation 属性,但如果文档让您知道,这在技术上不是一个数组)。因此,要查询用户参与的讨论,您可以查询 Discussions 对象类,其中 Key:@"partcipants"equalTo:.objectId</p>
<p>重要的一点是,您可以轻松地从 PFRelation 属性中删除/添加对象,但这些对象尚未获取,您必须首先获取 PFRelation 中的项目才能访问它们。 (如果您转到文档,您会看到这一点)因此,您必须先在 PFRelation 中获取对象,然后再对它们进行实际查询。</p>
<p>您的用户数组可以只包含他们的 objectIds 的原因是为了避免实际获取 PFRelation 中的对象所需的时间。请记住,在查询数组属性时, whereKey:equalTo: 方法会检查 equalTo: 旁边的对象是否包含在数组属性中。</p>
<p>最后,您可以拥有一个“messages”PFRelation 属性,当您访问该属性时,该属性会将您带到您提交给某个 Discussion 对象的 Message 对象。</p>
<p>去查找 PFRelations,它们是您的 friend ,是一种通过直接查询来解决您的问题的方法。 </p></p>
<p style="font-size: 20px;">关于ios - 使用 Parse 在消息应用程序中存储消息和讨论,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/24345127/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/24345127/
</a>
</p>
页:
[1]