Django渲染字段不起作用

时间:2014-09-18 01:32:43

标签: python django django-models django-templates

我的模特:

class preguntas(models.Model):
pregunta = models.CharField(max_length=200)

我的观点:

opciones = preguntas.objects.all()
return render_to_response(template, {"pregunta": pregunta, "opciones": opciones})

据说如果在模板中我写{{opciones.pregunta}}它应该返回字段问题,但它没有,任何想法?

如果您需要更多信息,请告诉我

2 个答案:

答案 0 :(得分:1)

您加载了一个查询集opciones,但在将其列在您的上下文变量中之前似乎没有加载任何名为pregunta的内容。 preguntaopciones查询集的单个成员实例的属性。

由于opciones是一个查询集,您需要遍历它以查看模板中的每个项目。您的模板看起来应该更像:

{% for o in opciones %}
{{ o.pregunta }}
{% endfor %}

另外,我相信当你使用render_to_response时,你也应该添加context_instance=RequestContext(request),以便让事情顺利运作。

答案 1 :(得分:1)

看起来你正在将preguntas列表作为opciones传递。所以你需要迭代列表才能读取相应的pregunta。

{% for p in opciones %}
    {{ p.pregunta }} <!--do something with each pregunta-->
{% endfor %}
编辑:souldeux打败了我。