Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
django模板问题_Django_Django Templates - Fatal编程技术网

django模板问题

django模板问题,django,django-templates,Django,Django Templates,如何获取模板中form.field的值。我指的不是字段的html输入元素,而是输入中的值?以获取绑定数据(在1.2.3中) 在开发版本中,它是{{form.field.value}自动提取初始数据或绑定数据,而在当前版本中它是一个显式调用: form.field.field.initial或form.field.data 更新:管理表单的工作方式不同。首先,在你的评论中,BoundField是{{adminfield.field}}而不是{{adminfield},但是我们有更大的问题 在变更

如何获取模板中form.field的值。我指的不是字段的html输入元素,而是输入中的值?

以获取绑定数据(在1.2.3中)

在开发版本中,它是
{{form.field.value}
自动提取初始数据或绑定数据,而在当前版本中它是一个显式调用:

form.field.field.initial
form.field.data


更新:管理表单的工作方式不同。首先,在你的评论中,
BoundField
{{adminfield.field}}
而不是
{{adminfield}
,但是我们有更大的问题

在变更表单上,表单未绑定,因此只能从传递到表单构造函数的初始字典中提取数据。它不能通过django模板语法访问

以下是
BoundField
中的相关行:

    if not self.form.is_bound:
        data = self.form.initial.get(self.name, self.field.initial)
        # you can't do this kind of lookup from the template.
从模板中访问此类信息而无需创建模板标记(您应该这样做!)的唯一方法是循环初始字典中的每个键/值,并与当前字段名称进行比较

  {% for line in fieldset %}
    {% for adminfield in line %}
            {% for k, v in adminfield.field.form.initial.items %}
                {% if k == adminfield.field.name %}
                    {{ k }}:{{ v }}
                {% endif %}
            {% endfor %}
    {% endfor %}
  {% endfor %}

那你能发布你的表格代码和模板吗?对于构建的表单(request.POST),绑定的数据将在当前版本中的
form.field.data
中可用。我正在尝试在change\u form.html中获取对象的名称。代码是:{%forAdminForm%}{%forFieldSet%}{%forFieldSet%}{%forField%}{{field.data}}{%endfor%}{%endfor%}{%endfor%}{%endfor%}如果您试图修改管理表单,这会改变一切,因为它不是表单的标准用法。我会把挖遍后发现的东西贴出来。
  {% for line in fieldset %}
    {% for adminfield in line %}
            {% for k, v in adminfield.field.form.initial.items %}
                {% if k == adminfield.field.name %}
                    {{ k }}:{{ v }}
                {% endif %}
            {% endfor %}
    {% endfor %}
  {% endfor %}