I'm creating a Realm object in Kotlin.
Realm Object:
open class PurposeModel(var _id: Long?,
var purposeEn: String?,
var purposeAr: String?) : RealmObject()
When I compile the above code I'm getting this error:
error: Class "PurposeModel" must declare a public constructor with no arguments if it contains custom constructors.
I can't find any question related to this in Kotlin. How do I resolve this?
To clear this error you have to assign default values to properties.
Change the Realm Object like this:
open class PurposeModel(
var _id: Long? = 0,
var purposeEn: String? = null,
var purposeAr: String? = null
) : RealmObject()
Now it will compile.
Reason:
When the default value not assigned it will become the parameters of the constructor, Realm need a public constructor with no arguments. When the default value assigned, it will become the properties of the class. So you will get empty constructor by default and clean code.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With