3

我有一个覆盖 het Django 更改表单的应用程序。我要更改的是底部的提交按钮。下面是change_form.html一个 django 应用程序:

{% extends "admin/change_form.html" %}
{% block submit_buttons_bottom %} 
    ## add some buttons
{% endblock %}

我要显示/添加的按钮取决于表单名称“状态”中某个字段的值。如何获取模板中字段的值...类似于

{% if form.field.status == 'unresolved' %}
    <input type="submit" value="Mark as resolved" class="default" name="_save" />
{% endif %}

更新:

我没有收到任何错误。根本没有显示任何内容。

循环通过 var 'adminform' 将带我到我需要的领域

{% for fieldset in adminform %}
    {% for line in fieldset %}
        {% for field in line %}
            {% if field.field.name == 'status' %}
                this is status {{ field.field.name }} - {{ field.contents }}
            {% endif %}
        {% endfor %}
    {% endfor %}
{% endfor %}

但我想直接访问它。就像是:

{% if adminform.0.0.field.status == 'unresolved' %}
    <input type="submit" value="Mark as resolved" class="default" name="_save" />
{% endif %}
4

2 回答 2

1

这应该有效:

{% if adminform.form.status.value == 'unresolved' %}

或者如果该字段是只读的,还有另一种方法:

{% if adminform.form.instance.status == 'unresolved' %}
于 2014-07-28T10:59:16.943 回答
0

尝试将您的if陈述更改为 -

{% if adminform.status.value == 'unresolved' %}

我猜,但我认为adminform变量可能只是一种形式。查看文档的这一部分以查看表单字段的属性。

于 2013-02-15T11:09:03.907 回答