django - Django Querset 提取 PK
问题描述
我有以下代码。
queryset = Registry.objects.filter(
epas_id__contains=uuid_obj_id
).values_list('pk', flat=True)
根据我的数据,这正确返回以下内容:
<QuerySet [UUID('d9a0977c-5bc0-4667-af24-5e95b83761d4'), UUID('b2d0f086-0a55-44cc-b1ba-3ebf598d24ae')]>
但我想要做的是只提取列表中 pk 的值,所以是这样的:
['d9a0977c-5bc0-4667-af24-5e95b83761d4', 'b2d0f086-0a55-44cc-b1ba-3ebf598d24ae']
任何关于我如何实现这一目标的想法和帮助将不胜感激。
解决方案
我们可以使用列表理解,并调用str(…)
每个元素,例如:
queryset = Registry.objects.filter(
epas_id__contains=uuid_obj_id
).values_list('pk', flat=True)
result = [str(pk) for pk in queryset]
推荐阅读
- tensorflow - tensorflow 无法创建会话:CUDA 驱动程序版本对于 CUDA 运行时版本不足
- javascript - 如何加载播放音频
- ios - 使用 Objective C 类中的参数调用 Swift 函数
- php - 在 word press 中包含父兄弟文件夹中的 PHP 文件
- docker - 应用程序不可用 - 在 Openstack 3.10 上部署 docker 映像时
- sql - 如何将嵌套 json 中的 json 对象添加到 Oracle DB 中的 db 列中
- css - 反应表中过滤器的自定义样式
- python - Python、深度学习、梯度下降法示例
- mongodb - 使用 golang 从 mongodb 集合中获取特定的键值对
- azure - 在 Azure 容器中运行 docker 命令