Skip to content

Instantly share code, notes, and snippets.

@augustomen
Last active September 24, 2019 13:29
Show Gist options
  • Save augustomen/5f1eda8de065deb0fa7ab72cc16cd0cb to your computer and use it in GitHub Desktop.
Save augustomen/5f1eda8de065deb0fa7ab72cc16cd0cb to your computer and use it in GitHub Desktop.
Django Admin Bootstrapped customized fieldset.html that maintains alignment of labels and fields in two-column lines
{% load bootstrapped_goodies_tags %}
<fieldset class="_module _aligned" id="fieldset-{% if stacked_prefix %}{{ stacked_prefix }}-{% endif %}{{ forloop.counter }}" style="background:transparent">
{% if fieldset.name %}
<legend>
{% if 'collapse' in fieldset.classes %}
<a data-toggle="collapse" data-target="#fieldset-{% if stacked_prefix %}{{ stacked_prefix }}-{% endif %}{{ forloop.counter }} .fields">
{{ fieldset.name }}
&nbsp;<span class="btn btn-xs btn-default"><span class="glyphicon glyphglyphicon glyphicon-resize-full"></i></span>
</a>
{% else %}
{{ fieldset.name }}
{% endif %}
</legend>
{% endif %}
<div class="fields {% if not errors %}{{ fieldset.classes }}{% endif %}">
{% if fieldset.description %}
<div class="description">{{ fieldset.description|safe }}</div>
{% endif %}
{% for line in fieldset %}
<div class="row control-group {% if line.fields|length_is:'1' and line.errors %} error{% endif %}{% for field in line %}{% if field.field.name %} field-{{ field.field.name }}{% endif %}{% if not line.has_visible_field %} hidden{% endif %}{% endfor %}">
{% for field in line %}
<div class="col-xs-12 col-md-{{ line|column_width }} form-group {% if not line.fields|length_is:'1' %} field-box{% if field.field.name %} field-{{ field.field.name }}{% endif %}{% if not field.is_readonly and field.errors %} errors{% endif %}{% if field.field.is_hidden %} hidden{% endif %}{% endif %}">
<div class="control-label col-xs-4 col-md-{% if line.fields|length == 1 %}2{% else %}4{% endif %}">
{{ field.label_tag }}
</div>
{% if field.is_checkbox %}
<div class="controls col-xs-8 col-md-{% if line.fields|length == 1 %}10{% else %}8{% endif %}">
<div class="checkbox">
{% dab_field_rendering field.field %} {% if field.field.help_text %}<span class="help-block">{{ field.field.help_text|safe }}</span>{% endif %}
{% if not field.is_readonly and field.errors %}<span class="text-danger">{{ field.errors|striptags }}</span>{% endif %}
</div>
</div>
{% else %}
<div class="controls col-xs-8 col-md-{% if line.fields|length == 1 %}10{% else %}8{% endif %}">
{% if field.is_readonly %}
<p>{{ field.contents }}</p>
{% else %}
{% dab_field_rendering field.field %}
{% endif %}
{% if not field.is_readonly and field.errors %}<span class="text-danger">{{ field.errors|striptags }}</span>{% endif %}
{% if field.field.help_text %}
<span class="help-block">{{ field.field.help_text|safe }}</span>
{% endif %}
</div>
{% endif %}
</div>
{% endfor %}
</div>
{% endfor %}
</div>
</fieldset>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment