代码之家  ›  专栏  ›  技术社区  ›  Ekin Ertaç

Django管理多模板继承

  •  0
  • Ekin Ertaç  · 技术社区  · 7 年前

    我以为这是一项很简单的任务,但事实并非如此。 所以,我有两个不同的mixin用于Django管理类。它们都有一些带有模板的代码。

    管理py
    class AdminMixin01(admin.ModelAdmin):
        change_form_template = "change_form1.html"
    
    class AdminMixin02(admin.ModelAdmin):
        change_form_template = "change_form2.html"
    
    
    class ModalAdmin(AdminMixin01, AdminMixin02, admin.ModelAdmin):
        pass
    
    改变形式1。html
    {% extends "change_form.html" %}
    
    {% block content %}
        {{ block.super }}
        Form 1
    {% endblock content %}
    
    改变形式。html
    {% extends "change_form.html" %}
    
    {% block content %}
        {{ block.super }}
        Form 2
    {% endblock content %}
    

    无论是python还是html,它看起来都非常简单。 问题是Django只呈现第一个mixin的模板,而忽略第二个mixin的模板。只有在这种情况下 change_form1.html 译成原稿 change_form.html 模板,没有来自 change_form2.html .

    这两个mixin中的python代码都可以正常工作,但html代码除外。 有什么想法吗?

    0 回复  |  直到 7 年前