"Cannot find 'RealmProperty' in scope" 尝试使用可选双精度时,Swift

"Cannot find 'RealmProperty' in scope" when trying to use optional double, Swift

我正在使用 Realm Sync 为我的 iOS 应用程序存储数据,编码为 Swift。我想为 Realm 对象 (User_budgets) 创建一个可选的双 属性(预算)。我在 Realm 模式中创建了对象,然后复制到 Realm 生成的数据模型 SDK 中,如下所示:

import Foundation
import RealmSwift

class User_budgets: EmbeddedObject {
    let budget = RealmProperty<Double>()
    @objc dynamic var date: Date? = nil
}

然后我收到错误消息:“无法在范围内找到 'RealmProperty'”。我尝试将代码更改为以下内容:

@objc dynamic var budget: Double? = nil

但随后我收到错误消息:“属性 无法标记为@objc,因为它的类型无法在 Objective-C 中表示”

我进行了搜索,但似乎找不到以前遇到过此问题的人。有一个简单的解决方法,就是使预算 属性 成为必需的(非可选的),但最好知道将来如何能够创建可选的双重属性。谁能帮帮我?

我认为您对该选项使用了错误的定义,因为它仅在 beta 10.8.0-beta.0 中可用:

你拥有的是

let budget = RealmProperty<Double>()

对于所有其他版本,它应该是

let budget = RealmOptional<Double>()

RealmProperty and RealmOptional

哦,这是 link 所有 Support Property Types