查询在shell中工作,但在浏览器中不工作

时间:2012-10-01 03:33:48

标签: django django-queryset

我在视图中有这个查询:

def metas (request, pipol_id):
  pipol = Personas.objects.get(pk=pipol_id).evidencias_set.all().exclude(calidad=1)
  return render_to_response ( 'metas/metas.html', {'pipol': pipol} )

当我在shell中测试这段代码时:

pipol_id = u'3'
pipol = Personas.objects.get(pk=pipol_id).evidencias_set.all().exclude(calidad=1)
pipol.count()
Out[8]: 45
pipol = Personas.objects.get(pk=pipol_id).evidencias_set.all()
pipol.count()
Out[10]: 46

查询按预期工作(我有一个evidencia calidad=1

但是当我尝试使用我的模板时,我没有数据。

这是urls.py

url (r'^(?P<pipol_id>\d+)/$', 'metas'), 

网址如下:http://localhost:8000/metas/3/

没有错误,只是一个空的QuerySet。我缺少什么?

提前致谢。

1 个答案:

答案 0 :(得分:0)

在您的shell中,您使用3获取pipol_id的值,而在浏览器中使用值1

标识为Personas

1对象在evidencias_set中可能没有任何内容。