mongodb - 如何在 Mongodb 中存储动态字段

标签 mongodb nosql

我是 MongoDB 的新手,但正在寻找它来解决这个问题:

我的应用程序有一个动态表单生成器,允许用户在表单上添加动态字段。表单上的所有字段都不是固定的或静态的。

用户可以在表单上添加任何数字和任何类型的字段,如文本字段、下拉列表或日期字段并保存表单。

我相信因为它是一个动态存储并且字段不是静态的,所以 Oracle DB 不会用于存储。 Mongo DB 可以用于此类存储和获取数据吗?

如何将数据存储在 Mongo DB 中并获取数据以显示表单。

提前致谢!

最佳答案

正如您提到的,MongoDb 是基于文档的数据库,它没有列或字段限制。您可以将动态字段放入一个对象并将其保存到同一个集合中。

例如

 Person: {
   name: '',
   Contacts: [ contact 1, contact 2]
}

您也可以添加更多字段,例如您可以向其中添加电子邮件

 Person: 
 { name: '', contacts: [], email: ''}

您现在也可以将其保存在 Person Collection 中。只需使用 javascript 对象并添加新的键和值并保存即可。

 person.email = 'new value';

当获取这些时,您可以遍历对象上的键并将值再次显示给前端

for (var key in person) {
  // do something with key
}

关于mongodb - 如何在 Mongodb 中存储动态字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23256507/

相关文章:

android - Couchbase lite 查询和过滤

mongodb - 有没有多核利用NoSQL的系统?

javascript - 解析 Javascript 中的逆关系(whereEqualTo)

javascript - MongoDB 从数组中返回特定字段

mongodb - 需要光标选项

json - 将 mongoengine 对象转换为 JSON

.net - 您将如何创建数据继承数据库?

java - HBase多表扫描作业

java - MongoDB:如何通过java驱动程序创建经过身份验证的数据库

java - 如何在 MorphiaQuery 中检索 @Reference 字段/哪个是最好的 @Reference 或 @Embedded 和 SubQuery