我不知道如何在以下情况下使用LinkingObject
。
class Message: Object{
...
dynamic fromUser : User?
dynamic toUser : User?
}
class User: Object {
....
let messages = List<Message>()
}
messages
应该包含完整的发送和接收的消息。
如何使用 LinkingObject?
谢谢。
最佳答案
来自文档:
With linking objects properties, you can obtain all objects that link to a given object from a specific property.
就您而言,我猜您希望在 Message
实例中获取所有链接的 User
,因此您可以像这样定义 LinkingObjects
:
class Message: Object {
dynamic var fromUser : User?
dynamic var toUser : User?
let users = LinkingObjects(fromType: User.self, property: "messages")
}
否则,如果您需要获取来自或发送给用户的所有消息,您可以这样使用LinkingObjects
:
class Message: Object {
dynamic var fromUser : User?
dynamic var toUser : User?
}
class User: Object {
let fromMessages = LinkingObjects(fromType: Message.self, property: "fromUser")
let toMessages = LinkingObjects(fromType: Message.self, property: "toUser")
}
user.fromMessages
将包含所有具有 fromUser == user
的 Message
。
请查看Relationships section in the Docs了解更多信息。
关于ios - LinkingObject 的用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39991513/