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