Realm&Kotlin访问字段的变量
我有以下情况:
我通过Retrofit2&GSON获取一些数据,我不想完全保存在领域数据库中。 但是我需要稍后访问模型。
那么这里是模型:
open class Notification() : RealmObject() { @PrimaryKey var pushNotificationId: Long = -1 var date: Date = Date() var apsRaw: String = "" @Ignore var aps: Aps? = null get() = field ?: Gson.getInstance().fromJson(apsRaw, Aps::class.java) private set
同
open class Aps(var message: String = "", var category: String = "")
我想实现的是,只保存领域的apsRaw
字符串( 以避免有另一个表“Aps” ),但在运行期间,我想使用Aps
实例出于方便的原因。 所以当从领域加载它,我想初始化它,如果它没有被初始化之前。
这样我每次都调用Gson转换器,因为通过field
访问field
总是返回null
有什么建议么?
怎么样
@Ignore var aps: Aps? = null get() { if(field == null && "" != appsRaw) { field = Gson.getInstance().fromJson(apsRaw, Aps::class.java) } return field } private set