如何将 QuerySet 从 python 传递给 js?
Posted
技术标签:
【中文标题】如何将 QuerySet 从 python 传递给 js?【英文标题】:How do I pass a QuerySet from python to js? 【发布时间】:2021-06-01 15:36:35 【问题描述】:所以我目前在 Django 中工作,我想从我的数据库中获取数据并在我的 js 脚本中使用它。这就是我要传递给 js 的内容,stockhist=StockHistory.objects.filter(user_id=x).values()
【问题讨论】:
【参考方案1】:您可以按照in the first answer to this question 的描述将查询集转换为 JSON,并在您的 API 响应中返回结果。
根据您项目的性质,您可能还想了解更多关于 Django Rest Framework 的serializers。
【讨论】:
【参考方案2】:所以我想通了,但很难找到字典而不是我使用时得到的刺痛
```stockhist=(StockHistory.objects.filter(user_id=x))
hist=serialize('json',stockhist)```
当我像这样将 json 更改为 python 时,一个幸运的猜测让我得到了正确的答案
```stockhist=(StockHistory.objects.filter(user_id=x))
hist=serialize('python',stockhist)```
对于那些想知道我如何在我的 html 中调用它的人,这就是我所做的
``` hist|json_script:"Hist" ```
我在我的 js 中这样称呼它
var performanceHist = JSON.parse(document.getElementById('Hist').textContent)
【讨论】:
以上是关于如何将 QuerySet 从 python 传递给 js?的主要内容,如果未能解决你的问题,请参考以下文章
在 Django 1.11 中将 QuerySet 传递给 Celery 任务
如何将值从 get_queryset() 传递到 get_context_data()
将数组从jquery传递给python函数时如何设置url?