0
我有一個項目,試圖重組一些字段,其中一些將可見,其他字段將顯示在窗體中,這樣我就可以在字段上應用java腳本來擴展。任何人都可以建議我如何在我的modelForm類和模板strcuture中做這樣的事情?django模型表單重組字段
models.py
class Page(models.Model):
# version control columns
version_from = models.DateTimeField(auto_now_add=True, editable=False)
version_to = models.DateTimeField(null=True, blank=True, editable=False)
# data
name = models.CharField(_('Name'), max_length=10, help_text=_('The name of the page will be used as a display name & in navigation menus'))
show_in_navigation = models.BooleanField(default=True)
slug = models.SlugField(_('Slug'),)
subject = models.CharField(_('Subject'), max_length=30,)
html_title = models.CharField(_('HTML Title'), max_length=15, blank=True, null=True)
keywords = models.CharField(_('HTML Keywords'), max_length=200, blank=True, null=True)
content = models.TextField(_('Content'),)
parent = models.ForeignKey('self', null=True, blank=True)
# audit
created_at = models.DateTimeField(auto_now_add=True)
created_by = models.ForeignKey(User, editable=False)
# objects manager
objects = PageManager()
class Meta:
unique_together = (
'id',
'slug'
)
forms.py
class PageForm(forms.ModelForm):
class Meta:
model = Page
頁form.html
<form class="form well" method="POST">
{% csrf_token %}
{% if form.errors %}
<div class="alert alert-error">
<a class="close" data-dismiss="alert" href="add_blog.html#">×</a>
<h3>Error</h3>
{{ form.non_field_errors }}
{% for field in form %}
{{ field.errors }}
{% endfor %}
</div>
{%endif%}
{% csrf_token %}
{# Include the hidden fields #}
{% for hidden in form.hidden_fields %}
{{ hidden }}
{% endfor %}
{# Include the visible fields #}
{% for field in form.visible_fields %}
{{ field.label_tag }} {{ field }}
<span class="help-block">{{ field.help_text }}</span>
{% endfor %}
<br />
<input type="submit" value='{% trans 'Login' %}' class="btn" />
</form>
我的挑戰是,如何才能讓該領域一決高下,並呈現關鍵詞在div標籤中的html和最後。
下面例子是什麼,我想實現
<form class="form well" method="POST">
{% csrf_token %}
{% if form.errors %}
<div class="alert alert-error">
<a class="close" data-dismiss="alert" href="add_blog.html#">×</a>
<h3>Error</h3>
{{ form.non_field_errors }}
{% for field in form %}
{{ field.errors }}
{% endfor %}
</div>
{%endif%}
{% csrf_token %}
{# Include the hidden fields #}
{% for hidden in form.hidden_fields %}
{{ hidden }}
{% endfor %}
{# Include the visible fields #}
{% for field in form.visible_fields %}
{{ field.label_tag }} {{ field }}
<span class="help-block">{{ field.help_text }}</span>
{% endfor %}
{% for collapsible_field in form.collapsible_fields %}
<div class='collapsible'>
{{ field.label_tag }} {{ field }}
<span class="help-block">{{ field.help_text }}</span>
</div>
{%endfor%}
<br />
<input type="submit" value='{% trans 'Login' %}' class="btn" />
</form>
上面的例子是爲了進一步說明我的觀點,但我會去的任何其他方法。請指教?
非常感謝你 – 2012-07-29 14:18:28