我有一个mongoose架构定义为:
var Theme = mongoose.model( 'Theme', {
id: String,
name: String,
background: {
url: String,
color: String
},
text: {
color: String,
highlight: String
},
paper: {
background_color: String,
opacity: Number,
font: {
family: String,
size: Number,
color: String
},
font_shadow: {
x: Number,
y: Number,
blur: Number,
color: String,
opacity: Number
},
border: {
size: Number,
type: String,
color: String,
opacity: Number
},
shadow: {
x: Number,
y: Number,
blur: Number,
spread: Number,
color: String,
opacity: Number
}
}
});
架构在适当的node.js文件中定义。 我的数据库中有相应的文档:
_id: ObjectId("5397557574c5e235160008c5"),
id: "scifi-1",
name: "Sci-fi light",
background: {
url: "/bgr/1.jpg",
color: "#223388"
},
text: {
color: "#333333",
highlight: "#555555"
},
paper: {
background_color: "#444444",
opacity: 0.8,
font: {
family: "anonymous",
size: 14,
color: "#888888"
},
font_shadow: {
x: 0,
y: 0,
blur: 5,
color: "#123456",
opacity: 0.5
},
border: {
size: 1,
type: "solid",
color: "#666666",
opacity: 0.8
},
shadow: {
x: 0,
y: 0,
blur: 5,
spread: 0,
color: "#ff0000",
opacity: 0.5
}
}
这里的问题是,通过ajax调用成功检索数据库文档后,一切都很好,除了" border"拥有[object Object]类型的数据,正如您所看到的那样,它不应该是什么。
以下是output,以防万一。
知道我错过了什么吗?
答案 0 :(得分:2)
原因似乎是你不能使用"输入"作为变量名称。要么我必须使用不同的名称,要么我可以这样定义:
...
type: {type: String}
...
感谢https://stackoverflow.com/a/14755185/820948 由于限制,将在2天内将其标记为已解决。