您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

处理django包含模板标记中的请求

5b51 2022/1/14 8:22:38 python 字数 2491 阅读 538 来源 www.jb51.cc/python

我是Django的新手,我正在尝试将上传文件表单放入包含标记中.所以我可以在各种模板中使用它. 我创建了以下包含标记: #upload_files.py @register.inclusion_tag('upload_form.html') def upload_handler(context): request = context['request'] view_url =

概述

我创建了以下包含标记

#upload_files.py

@register.inclusion_tag('upload_form.html')
def upload_handler(context):
    request = context['request']
    view_url = reverse('upload.views.upload_handler')
    if request.method == 'POST':
        form = UploadForm(request.POST,request.FILES)
        if form.is_valid():
            form.save()
        return HttpResponseRedirect(view_url)

    upload_url,upload_data = prepare_upload(request,view_url)
    form = UploadForm()

    upload_model_list = UploadModel.objects.all().order_by('-pub_date')

我现在希望将其包含在模板中,所以在我拥有的页面上:

#mypage.html
{% extends 'base.html' %}
{% load upload_files %}

{% upload_handler %}

我收到以下错误

upload_handler takes 1 arguments

我应该从模板中传递什么参数?

@register.inclusion_tag('upload_form.html',takes_context=True)

认上下文总是第一个参数然后!

有关详细信息,请参阅django在inclusion tags上的文档.

附注:仔细确定您使用此模板标签页面,因为视图可能会以某种方式呈现其他表单/处理发布请求,这些请求可能会与您的标记提供的逻辑发生冲突(例如,如果表单验证将被触发,则会触发表单验证.页面可能会被来自其他表单的帖子请求调用).你可以,例如.另外检查一些HTML元素的名字是否在request.POST中,如果你在页面上有多个表单!

总结

以上是编程之家为你收集整理的处理django包含模板标记中的请求全部内容,希望文章能够帮你解决处理django包含模板标记中的请求所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶