从数据库中获取的对象框显示的信息已过期
Objectbox fetching from db is showing out of date information
我已经无缝地使用对象框 3 年了。我通过添加一个名为“public”的额外参数修改了我的一个对象,这是一个布尔值。当我将对象存储在数据库中时,该值为 true。当我从数据库中获取对象时,它是 false
private fun storeChannelsInDb(channels: List<Models.Channel>) {
channels.forEach { channel ->
val channelMapped = ChannelMapper.toObjectBoxModel(channel)
channelBox.box.put(channelMapped)
if(channelMapped.channel_id == 7 ){
println("********* storing "+ channelMapped.public)
}
}
}
override fun getChannels(): List<Channel> {
for (channel in channelBox.box.all){
if(channel.channel_id == 7){
println("********* fetching "+ channel.public)
}
}
return channelBox.box.all
}
我没有为此参数提供默认值,因为它总是从 api 返回。我在应用程序启动时获取这些对象并在添加它们之前清空框。
我试过添加延迟等,但总是返回 false。即使我提供默认值 true,它也会返回 false。任何建议将不胜感激
问题是“public”是一个受保护的词。由于 @user:551269
的评论,更改名称解决了问题
我已经无缝地使用对象框 3 年了。我通过添加一个名为“public”的额外参数修改了我的一个对象,这是一个布尔值。当我将对象存储在数据库中时,该值为 true。当我从数据库中获取对象时,它是 false
private fun storeChannelsInDb(channels: List<Models.Channel>) {
channels.forEach { channel ->
val channelMapped = ChannelMapper.toObjectBoxModel(channel)
channelBox.box.put(channelMapped)
if(channelMapped.channel_id == 7 ){
println("********* storing "+ channelMapped.public)
}
}
}
override fun getChannels(): List<Channel> {
for (channel in channelBox.box.all){
if(channel.channel_id == 7){
println("********* fetching "+ channel.public)
}
}
return channelBox.box.all
}
我没有为此参数提供默认值,因为它总是从 api 返回。我在应用程序启动时获取这些对象并在添加它们之前清空框。
我试过添加延迟等,但总是返回 false。即使我提供默认值 true,它也会返回 false。任何建议将不胜感激
问题是“public”是一个受保护的词。由于 @user:551269
的评论,更改名称解决了问题