Django 发送带有请求的对象
在下面的代码中,我试图发送一个带有请求的对象,如果是这样,这是否正确?如何在模板中解码它Django 发送带有请求的对象,django,django-models,django-templates,django-views,Django,Django Models,Django Templates,Django Views,在下面的代码中,我试图发送一个带有请求的对象,如果是这样,这是否正确?如何在模板中解码它 def index(request): cat = Category.objects.filter(title="ASD") dict = {'cat' : cat} request.update('dict' : dict) #or request.dict=dict; 在模板中,我们可以将代码编写为 {% for o
def index(request):
cat = Category.objects.filter(title="ASD")
dict = {'cat' : cat}
request.update('dict' : dict)
#or
request.dict=dict;
在模板中,我们可以将代码编写为
{% for obj in request.dict%}
obj.title
{% endfor %}
编辑:
如果我调用函数,比如
def post_list(request, page=0, paginate_by=20, **kwargs):
logging.debug("post_list")
page_size = getattr(settings,'BLOG_PAGESIZE', paginate_by)
return list_detail.object_list(
request,
queryset=Post.objects.published(),
paginate_by=page_size,
page=page,
**kwargs
)
您没有显示用于渲染视图(等)的实际函数 假设您正在使用: 呈现具有给定属性的给定模板 上下文字典并返回 HttpResponse对象与渲染的 文本 因此,如果您将
{“foo”:您的{u对象}
作为字典传入,您可以直接在模板中使用{{foo}
如果您使用的是通用视图,则应使用
额外上下文
:
额外上下文:价值字典
添加到模板上下文。通过
默认情况下,这是一个空字典。
如果字典中的值为
可调用,则泛型视图将调用
它将在渲染模板之前关闭
你可以这么做,但你为什么要这么做?Django有一种简单、定义良好且文档化的方法,通过上下文将数据传递到模板中。为什么要设法解决这个问题
评论后编辑否。同样,Django有一个非常好的方法,通过
extra_context
参数将额外的上下文传递到通用视图中,该参数再次出现。您完成了官方教程了吗?看起来您缺少了一些基本概念。我问这个问题是因为我正在将一些参数传递给djangos list_detail.object_list(),所以我必须这样传递。请告诉我传递请求的正确方式。谢谢……请查看编辑,如果我按编辑中所示调用函数,如何传递额外上下文??是否尝试将extra\u context
添加到object\u list
的参数列表中?返回list\u detail.object\u list(request,queryset=Post.objects.published(),paginate\u by=page\u size,page=page,额外上下文={'sumvar':sumvar},**kwargs)此工作是否会出现问题?我之所以做出评论,是因为无法从模板打印变量
render_to_response(template_name[, dictionary][, context_instance][, mimetype])