我正在开发一个用于管理大数据表存储库数据的应用程序。我正在使用kotlin + mongodb。 我面临的问题是所请求的数据结构部分未知。更具体地说,数据结构由一些基本字段以及其他可以由“主要用户”在运行时设置的字段组成。至于此类“用户字段”的类型,我可以使用字符串。因此,我需要使用一种“动态结构”,例如:
data class BasicInfo (
val _id :ObjectId,
var value :String,
val isAlert :Boolean,
var subject :String,
// here would need sort of dynamic fields
var valid :Validity
)
data class RestrictedInfo (
val _id :ObjectId,
var value :String,
// here would need sort of dynamic fields
var valid :Validity
)
data class Validity (
var family :String,
var year :Int,
var accessories :Array<String>?
)
数据存储在mongoDB中。必须允许主要用户创建新数据字段或删除它们。您不知道他们是否会这样做以及他们可以创建多少个新字段。当然,应用程序应在运行时考虑所有存在的数据字段,包括基本字段和用户字段。 我已经找到了解决该问题的方法,但实际上很粗糙,因此我正在寻找社区的想法/帮助。