代码之家  ›  专栏  ›  技术社区  ›  Adrian Lopez

Django-扩展注册表模板不显示字段

  •  1
  • Adrian Lopez  · 技术社区  · 13 年前

    我正在尝试从插入注册表模板 django-registration 在另一个html文档中。 原始的注册模板运行良好,用户保存在数据库中:

    这就是当我尝试使用在任何其他html文档中插入注册表时发生的情况 {% extend registration/myRegistrationFormTemplate.html %} 。字段未显示,提交按钮也不起作用。

    此外,这就是我尝试加载时发生的情况 myRegistrationFormTemplate.html 使用Jquery方法会显示.load.Fields,但提交按钮不起作用。

    问题是 :为什么会发生这种情况?通常的做法是什么?

    2 回复  |  直到 6 年前
        1
  •  0
  •   Community Mohan Dere    9 年前

    您可能需要使用 include 这允许您使用当前上下文呈现包含的页面。然而,这完全取决于您如何设计模板结构,以及它们如何扩展其他模板。这个答案可以解释差异: https://stackoverflow.com/a/2863753/2074398

        2
  •  0
  •   Adrian Lopez    13 年前

    谢谢FallenAngel你说得对,我错过了视图信息。谢谢你告诉我“包括”阿尔马尔基,现在一切都正常了。在我的项目中,我在这个视图中使用了两个表单和一个jquery模态窗口。为了简化我的解决方案,我只使用一个表单。我希望这对某人有用。

    解决方案: 将包含表单的模板视图

    def patrimonio_view(request, 
         template_name='home/patrimonio.html'):
    
    #OTHER DB QUERYS
    pat = patrimonio.objects.all()
    ciu = ciudad.objects.all()
    
    if request.method == 'POST':
        if "Registrar_usuario" in request.POST:
            #USER REGISTRATION FORM RELATIVE
            return register_usuario()
    
        if "Registrar_comerciante" in request.POST:
            #MERCHANT REGISTRATION FORM RELATIVE
            return register_comerciante()
    
    #RENDER
    return render_to_response(template_name,{
       'patrimonio':pat, 
       'ciudad':ciu,
    }, context_instance=RequestContext(request))
    

    网址.py

    url(r'^patrimonio/$','patrimonio_view',
    {'backend_registro_usuario': 'Hesperides.apps.accounts.regbackend_usuario.DefaultBackend','form_class_usuario':RegistrationForm_usuario}, name='vista_patrimonio'),
    

    在模板中,您将包括以下表单:

    {% include "registration/registration_form_usuario.html" %}