【发布时间】:2020-11-06 09:49:37
【问题描述】:
我正在为我的 python 烧瓶应用程序使用 mongoengine,并为项目使用自定义 ORM。
我在 GET API 中遇到了一个问题,我正在获取存储在我的数据库中的资产数据列表,当我检索数据时,它会向我显示如下数据: 代码,
{
"message": "done",
"result": {
"asset": [
{
"_id": {
"$oid": "5fa4fb9ea33244b15c6605bc"
},
"asset_download_link_android": "https://link",
"asset_download_link_ios": "https://link",
"asset_download_link_mac": "https://link",
"asset_download_link_windows": "https://link,
"asset_id": 1,
"asset_name": "car_exhibition_1",
"asset_size": "100MB",
"asset_thumbnail_url": "https://link",
"asset_version": "1.0.0",
"created_at": {
"$date": 1604647838316
},
"email": "xyz@gmail.com"
},
]
},
"status": 200
}
现在,
"_id": {
"$oid": "5fa4fb9ea33244b15c6605bc"
}
它是由我的 ORM 创建的,由于这个“$”符号,我无法继续,因为我的对象可以在开头分配一个带有特殊字符的变量。所以,请任何人都可以帮助我,我如何在响应中没有 $oid 字段的情况下获得响应。
我用来获取响应的代码是,
assets = collection_name.objects.all()
return_val = jsonify({"message" : "done" , "status" : status_code, "result" :
{"asset" : assets}})
return return_val, status_code
【问题讨论】:
-
您的前端需要
_id吗?或者可能;而不是修复$oid名称(或在循环中使用del asset['_id']删除id),让您的前端与$oid一起正常工作。$上的代码是什么? -
我需要像在前端一样使用统一,但他们不能像在变量中那样使用“$oid”,因为特殊字符不能让我们继续前进。所以,需要在响应中删除
标签: python mongodb flask-mongoengine