如何从模板访问表单使用的模型实例?

时间:2011-02-15 10:03:38

标签: django

我在我的模板中迭代由模型组成的formset。我想提供有关该模型的附加信息。如果这个How to Access model from Form template in Django问题的答案有效,我可以这样做:

{% for form in formset.forms %}
Status:{{ form._meta.model.status }}
    {{form}}
{% endfor %}  

但是这只会抛出TemplateSyntaxError:变量和属性可能不会以下划线开头。

2 个答案:

答案 0 :(得分:26)

我认为这不是你想要做的。模型是:它不会有status,因为这是一个只获取特定实例值的字段。

我怀疑你的意思是访问与表单关联的模型实例,这只是form.instance

答案 1 :(得分:1)

如果您在表单上创建一个读取值的属性,那么您可以在模板中轻松访问它。

class SomeForm(...):
  @property
  def status(self):
    return self._meta.model.status

...

       {{ form.status }}