change_form¶
the change_form.html
provided by jmb.jadmin
is already
configure to
prepare for autocompletion
prepare for ajax_inlines / admin_tabs
Adding buttons in change_form
¶
A templatetags used in ajax_inlines provides a way to easily add buttons to add actions on single records in the same place where «save» is.
To add such a button you need to overwrite change_form.html
and
add an argument extra_buttons_include
to submit_row2
with the file that will be included:
{% block submit_buttons_top %}
{% if change %}
{% submit_row2 extra_buttons_include="admin/myapp/template/buttons.html" %}
{% else %}
{% submit_row2 %}
{% endif %}
{% endblock %}
And the included file can be something as:
{% load i18n %}
<input type="submit" value="{% trans 'push template' %}" name="push_template" {{ onclick_attrib }}/>
Clearly you will also add a response_change
that can resemmble te
following code:
def response_change(self, request, obj):
if 'push_template' in request.POST:
try:
<your code>
messages.info(request, "Template pushed to main server")
except BlablaError:
pass
return super(TemplateAdmin, self).response_change(request, obj)