【发布时间】:2015-07-29 07:18:47
【问题描述】:
我正在使用 express 和 mongoose 开发一个特殊的应用程序,它需要构建一个 mongoose 模式,然后将其存储在数据库中。我想创建一个项目,人们可以在运行时动态创建集合,然后要求其他人通过特殊表格填写这些集合
例如,我想将如下所示的模式存储到我的数据库中。我该怎么做?
var entitySchema = {
name : String,
num : [Number],
time : [Date]
} ;
有没有什么特殊的函数可以将猫鼬模式转换为 json 或字符串?
在模式 json 上调用 toString() 函数,不起作用,因为它无法解释 String 或 Number 类型
【问题讨论】:
-
嗯,什么?您想将 Schema in 存储在数据库中吗?好吧,它只是一个对象,所以这不应该是一个问题,但你到底为什么需要,这似乎是一个可怕的想法?
-
我想创建一个项目,人们可以在运行时动态创建集合,然后要求其他人通过特殊表格填充这些集合,这就是为什么我需要将模式存储在 DB 中
-
您始终可以使用
{name : "", num: 1}等存储架构,并在获取构造函数后在循环中调用.constructor以获取构造函数,然后再将其传递给Mongo。没试过,但应该可以。然而这都是错误的,模式不应该是动态的,你不应该让用户定义模式。 -
@Salar - 你能启动并运行它吗?
标签: javascript node.js mongodb express mongoose