0

我正在为我的项目使用 django 框架。我有一个对象,我通过视图传递给模板。当我在视图中打印它的内容时,该对象工作正常,但在模板 html 中使用它时给我一个错误。我正在使用 render_to_response 函数

render_to_response('template.html',context_instance=RequestContext(request,request_params))

错误是

Value Error

Expected a Field, got a <type 'str'>

我正在将视图中的数据发送到

 request_params = {'data':my_object}
 return render_to_response('template.html',context_instance=RequestContext(request,request_params))
 #where my_object has variables like my_objects.variable1,my_objects.variable2

在模板中,我将数据检索为:

...
{% if data %}
{{data.variable1}}
{% endif %}

知道如何解决吗?谢谢

4

3 回答 3

2

这是你应该如何返回响应:

return render_to_response('template.html',
                          request_params,
                          context_instance=RequestContext(request))
于 2013-09-17T11:39:22.950 回答
1

我假设您使用的是Django 1.4 +。摆脱 longrender_to_response.这样做:

from django.shortcuts import render

# In your view

return render(request, 'template_name.html', {'test':'test'})
于 2013-09-17T11:44:19.080 回答
0

我明白了.. 我正在使用缓存的模板加载器'django.template.loaders.cached.Loader',除非我重新启动服务器,否则对模板的更改是不可见的。我重新启动服务器后检索了这些值。
谢谢大家的帮助和帮助。

于 2013-09-18T05:58:18.573 回答