Kotlin功能返回值正在保存在firebase中
我面临奇怪的问题,我有像下面kotlin类
class RequestCenterDetails : Serializable{ var instituteId: String? = null var centerId: String? = null var centerKey: String? = null var instituteKey: String? = null var studentId: String? = null var studentUID: String? = null var studentFullName: String? = null var studentEmailId: String? = null var status: String? = null var requestTime: Long? = null var grantTime: Long? = null var grantUserUID: String? = null var grantUserEmailID: String? = null var rejectComment: String? = null var grantUserName: String? = null var active: Boolean? = null var instituteName: String? = null var centerAddress: String? = null var centerLocation: GeoPoint? = null // this function return value is getting stored in firebase fun isActiveRequest() : Boolean { return active ?: false } }
这就是我如何保存到firebase
DatabaseReference requestRef = studentAccessRequestRef.child("/" + appfirebaseUserId + "/" + requestDetails.getCenterKey()); requestRef.setValue(requestDetails);
这就是它的存储返回类型
我想知道为什么它存储函数的返回值。 #AskFirebase
只要使用@Exclude
注释来避免这种情况,否则Firebase SDK会由于变量序列化而将该值触发到POJO对象。
尝试如下所示:
@Exclude fun isActiveRequest(): Boolean = active ?: false