我正在制作一个Web应用程序,该应用程序允许用户通过首先以客户端形式“注册”架构来在服务器上创建自己的自定义MongoDB集合。
因此,用户将创建一个架构客户端-使用如下形式表示:http :
//r.github.com/annotationsformatter/
因此,客户端Js将生成以下形式的JSON对象:
{
"collection_name": "person",
"data":
{
"name": "String",
"email": "String",
"id", "Number",
}
}
接下来,页面将把该对象发送到服务器,服务器将把这些东西转换data
为适当的Mongoose模式,并从中创建一个集合名称为collection的集合person
。
我迷路了-我将如何去做呢?我说的是转换为模式的部分。
如果我正确理解了目标,您将希望遍历data
JSON对象字段中的每个字段定义,然后通过将其映射到实际类型将其转换为猫鼬模式的有效字段。因此,您可以从这样的东西开始:
var mongoose = require('mongoose')
var typeMappings =
{"String":String,
"Number":Number,
"Boolean":Boolean,
"ObjectId":mongoose.Schema.ObjectId,
//....etc
}
function makeSchema(jsonSchema){
var outputSchemaDef = {}
for(fieldName in jsonSchema.data){
var fieldType = jsonSchema.data[fieldName]
if(typeMappings[fieldType]){
outputSchemaDef[fieldName] = typeMappings[fieldType]
}else{
console.error("invalid type specified:", fieldType)
}
}
return new mongoose.Schema(outputSchemaDef)
}
为了处理嵌入式对象和数组类型,您可能需要对其进行修改以使其具有递归性,并在遇到这些类型的对象时更加深入,因为字段可以与任意深度/结构嵌套在一起。
希望这可以帮助。
本文向大家介绍举例说明json的标准格式相关面试题,主要包含被问及举例说明json的标准格式时的应答技巧和注意事项,需要的朋友参考一下 JSON数值 JSON字符串 JSON数组 JSON对象 JSON对象数组 JSON数组对象
在使用 handlebars 渲染模板的时候,会传入以下数据: { "args": {}, "config": {}, "project": {}, "spec": {}, "interfaceMockRules": [], "datatypeEnums": [], "ds":{ "views": [], "t
问题内容: 我有一个JSON模式 我要在children属性中表示的是,它是具有相同精确模式的对象数组。这是描述它的正确方法吗? 问题答案: 使用您需要参考的架构 参见此处:http : //json-schema.org/latest/json-schema-core.html#anchor30
本文向大家介绍python:解析requests返回的response(json格式)说明,包括了python:解析requests返回的response(json格式)说明的使用技巧和注意事项,需要的朋友参考一下 我就废话不多说了,大家还是直接看代码吧! 返回如下: 补充知识:使用Python的requests库作接口测试——响应结果处理 在实际工作中,很多接口的响应都是json格式的数据,在测
DELPHI中解析JSON数据 可以使用我们的DEMO测试程序包中带的SuperObject,并可参考使用样例。 C#中解析JSON数据 使用LitJson.dll,点这里下载LitJson 使用时先引用 ,然后LitJson.JsonData jdata = LitJson.JsonMapper.ToObject(json);感谢长沙-集拓-车工的分享!
什么是INI接口格式 为了简化接口的开发,避免开发接口时使用JSON等数据格式,我们提供了INI文件交换的接口方式。 接口统一使用常见的ini文件格式,并且使用文件交换的方式进行数据通讯。 INI格式接口文件优点是: 采用文件格式交换,跟踪更方便。 一个文件中完整定义了协议命令的名称、get参数内容、post参数内容。 支持多层级的数据表达。 扩展方便,参数无长度和数量限制。 一个典型的提交文件格