是否可以将一些属性写入模型字段,以便以后用于区分模板中的不同字段?在
在模型.py在
from django.db import models
class Person(models.Model):
first_name = models.CharField("i am the Label", max_length=30)
last_name = models.CharField("i am other Label", max_length=30, customattr="Custom")
在表单.py在
^{pr2}$在模板.html在
<form action="" method="post">{% csrf_token %}
{% for field in form %}
{% ifequal field.customattr 'Custom' %} # HOW COULD THIS WORK?
<p>Hello world.</p>
{{ field }}
{% else %}
<p>This is not Custom</p>
{{ field }}
{% endifequal %}
{% endfor %}
<input type="submit" value="Submit" />
</form>
有什么提示吗?在
实际上不可能;
field
在模板代码中是一个表单字段,而不是一个模型字段。我会将表示逻辑从模型转移到模板中,然后执行如下操作:(django1.2中添加了== operator)
我不明白你为什么要这么做。如果要为ModelForm字段定义自定义html,可以如下所示覆盖它:
像这样你可以告诉Django你想如何呈现你的html。 您可以在文档https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#overriding-the-default-field-types-or-widgets中找到更多详细信息
相关问题 更多 >
编程相关推荐