繁体   English   中英

领域结果对象类型

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM