[英]Realm Results object type
这真的很基础,但是我只是找不到如何使用Swift从Realm数据库中获取所有类型的对象。 是的是的:
var dogs = try! Realm().objects(Dog)
但是,如果我想事先声明和初始化dogs变量,然后再将对象加载到其中,该怎么办? 喜欢:
var dogs = ???
dogs = realm.objects(Dog)
在这种情况下,可变狗的类型应该是什么?
Realm.objects(_:)
具有以下签名:
public func objects<T: Object>(type: T.Type) -> Results<T>
签名告诉您,当您将函数调用为realm.objects(Dog)
,返回类型将为Results<Dog>
。
如果要声明变量并稍后在同一函数中对其进行初始化,则可以简单地将声明与初始化分开,如下所示:
let dogs: Results<Dog>
// …
dogs = realm.objects(Dog)
如果要声明成员变量并需要在init
之后对其进行init
,则应将其声明为可选变量并使用var
:
var dogs: Results<Dog>?
// …
dogs = realm.objects(Dog)
除了结果,您还可以使用列表。 如果要在“一对多”示例中返回对象,这将很有用。
如果您有两个模型“国家”和“城市”,则一个国家可以有许多城市。
var rlmCountry: Country!
var rlmCities: List<City>?
rlmCities = rlmCountry.cities
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.