如何从QuerySet对象获取Django将在数据库中使用的SQL?我正在尝试调试一些奇怪的行为,但我不确定哪些查询会进入数据库.谢谢你的帮助.
我正在尝试使用Django和D3.js编写一个非常基本的条形图.我有一个名为play的对象,其日期时间字段名为date.我想要做的是显示按月分组的游戏数量.基本上我有两个问题:
现在我在这里看了一些其他的答案,并尝试过
json = (Play.objects.all().extra(select={'month': "extract(month FROM date)"})
.values('month').annotate(count_items=Count('date')))
Run Code Online (Sandbox Code Playgroud)
这接近我想要的信息但是当我尝试在模板中输出它时,它在月末出现如下(带Ls).这意味着显然它不是有效的js(没有qoutes)而且我真的不希望Ls到底那里.
模板:
<script>
var test ={{ json|safe }};
alert("test");
</script>
Run Code Online (Sandbox Code Playgroud)
输出:
var test = [{'count_items': 10, 'month': 1L}, {'count_items': 5, 'month': 2L}];
Run Code Online (Sandbox Code Playgroud)
我也尝试过这个数据的json.dump,但我被告知它是无效的JSON.这感觉在Django中应该更直接,所以也许我完全走向了这条路.
我正在尝试使用Django中的ValuesQuerySet功能将查询返回的字段数限制为仅需要的字段数.我想将此数据集序列化为JSON对象但是,Django不断抛出错误.下面我已经包含了我的代码和我收到的错误:
objectList = ConventionCard.objects.values('fileName','id').filter(ownerUser = user)
data = serializers.serialize('json', objectList)
return HttpResponse(data, mimetype='application/javascript')
Run Code Online (Sandbox Code Playgroud)
错误:
Exception Type: AttributeError
Exception Value: 'dict' object has no attribute '_meta'
Exception Location: C:\Python27\lib\site-packages\django\core\serializers\base.py in serialize, line 41
Run Code Online (Sandbox Code Playgroud)
谢谢 !