问题描述
我正在使用Django 2.2和postgres
这是测试值
actions={
"accept": [
{
"id": 123,# some random action id
"created": "{:%Y-%m-%dT%H:%M:%s.%f%z}".format(datetime.Now()),"user_id": 247,# some random user id
}
]
},
所以我想使用values_list
和annotate
。我不知道如何获取actions.accept.0.created
我尝试了什么
.annotate(first_accept=KeyTextTransform(0,KeyTextTransform("accept","quotation__actions")))
这失败。我得到了错误
django.db.utils.DataError: invalid input Syntax for integer: "accept"
LINE 1: ...te_type",("soMetable"."actions" #>> ARRAY['accept',0..
.annotate(accept_actions=KeyTextTransform("accept","quotation__actions"))
这行得通,但它给了我
'[{"id": 123,"created": "2020-10-16T12:28:16.452071","user_id": 247}]'
作为字符串。
我可以随后将字符串解析为yes,但是我更喜欢直接访问数组第一个元素的created
。
我该怎么做?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)