Loopback和MongoDB嵌入式文档定义JSON模型
问题描述:
您可以/如何用LoopbackJS在模型的json定义中定义嵌入式文档,而无需创建表示子文档的模型?Loopback和MongoDB嵌入式文档定义JSON模型
例如,请考虑以下这个文件的MongoDB:
{
_id: ObjectId("some_mongodb_id"),
subDocs: [
{
"propertyA": "a1",
"propertyB": "b1"
},
{
"propertyA": "a2",
"propertyB": "b2"
}
]
}
我可以回送建立两个模型:
some-model.json:
...
"properties": {
"subDocs": [
"SubDocsModel"
]
}
sub-docs-model.json:
...
"properties": {
"propertyA": "string",
"propertyB": "string"
}
不是这样做,但是,我想只是申报sub-doc
模型内嵌在some-model.json
中,因为它只是在那里记录some-model
的文档的形状。
这可能吗?喜欢的东西:
some-model.json:
...
"properties":{
"subDocs": [
{
"propertyA": {
"type": "string"
},
"propertyB": {
"type": "string"
}
}
]
}
我试过以上,但我结束了我的MongoDB文档与价值[object Object]
型string
在现场...
的目的是(1)以记录子文档的形状,以及(2)允许通过回送进行验证而不添加定制逻辑。
答
您可以将它定义为object
一些-model.json:
"properties": {
"subDocs": ["object"]
}
但如果你想验证或有子文档的结构,你需要创建一个回环模型。
Loopback不进行任何验证,...对于类型为object
的属性。
正确...但这需要我编写额外的代码来验证像'propertyA'类型为'string'的东西。有没有一种方法来编码类型? – jpoveda
@jpoveda号码如果您想要验证和子文档的数据结构的好处,您需要创建一个回环模型 –
感谢您的澄清。如果您更新了有关需要验证模型的详细信息,我会将答案标记为已接受。我会更新我的问题以明确该要求。 – jpoveda