我有项目端点,其中包含嵌入图像列表。该计划如下:
_schema = {
'name': required_string, # group name
'description': {
'type': 'string',
'maxlength': 140,
},
'images': {
'type': 'list',
'scheme': {
'type': 'objectid',
'data_relation': {
'resource': 'images',
'embeddable': True,
'field': '_id',
}
},
}
}
所以我正在尝试向items端点发出请求以获取嵌入对象
/项目/ 549ae47f4fb9041305403292嵌入= { “图像”:1}
但是,我只接收带有图像列表_ids的常规对象,而不是嵌入的图像。
以下是对象的示例:
{
"_updated": "Wed, 24 Dec 2014 16:06:23 GMT",
"name": "New Item",
"images": [
"549ae47f4fb904130540328b",
"549ae47f4fb904130540328e",
"549ae47f4fb9041305403291"
],
"_created": "Wed, 24 Dec 2014 16:06:23 GMT",
"_id": "549ae47f4fb9041305403292",
"_etag": "949e3b731823bb2c08682ba4b6696b86856ef941",
"description": "The best item ever"
}
我尝试将列表中的图片ID转换为objectids,但它没有帮助。任何想法为什么它不起作用?感谢
答案 0 :(得分:5)
您的架构定义不正确。在定义scheme
列表时,将schema
替换为images
:
_schema = {
'name': required_string, # group name
'description': {
'type': 'string',
'maxlength': 140,
},
'images': {
'type': 'list',
'schema': { # this was 'scheme' in your def
'type': 'objectid',
'data_relation': {
'resource': 'images',
'embeddable': True,
'field': '_id',
}
},
}
}
然后它会正确嵌入您的图像列表。