Author: brosner
Date: 2008-10-21 15:27:17 -0500 (Tue, 21 Oct 2008)
New Revision: 9244
Modified:
django/branches/releases/1.0.X/django/contrib/admin/helpers.py
django/branches/releases/1.0.X/django/contrib/admin/options.py
django/branches/releases/1.0.X/django/contrib/admin/templates/admin/edit_inline/stacked.html
django/branches/releases/1.0.X/django/contrib/admin/templates/admin/edit_inline/tabular.html
Log:
[1.0.X] Display non_field_errors of inline forms in the admin. This was a
presentation bug.
Backport of [9243] from trunk.
Modified: django/branches/releases/1.0.X/django/contrib/admin/helpers.py
===================================================================
--- django/branches/releases/1.0.X/django/contrib/admin/helpers.py
2008-10-21 20:25:45 UTC (rev 9243)
+++ django/branches/releases/1.0.X/django/contrib/admin/helpers.py
2008-10-21 20:27:17 UTC (rev 9244)
@@ -129,6 +129,16 @@
self.original.content_type_id =
ContentType.objects.get_for_model(original).pk
self.show_url = original and hasattr(original, 'get_absolute_url')
super(InlineAdminForm, self).__init__(form, fieldsets,
prepopulated_fields)
+
+ def field_count(self):
+ # tabular.html uses this function for colspan value.
+ num_of_fields = 1 # always has at least one field
+ num_of_fields += len(self.fieldsets[0][1]["fields"])
+ if self.formset.can_order:
+ num_of_fields += 1
+ if self.formset.can_delete:
+ num_of_fields += 1
+ return num_of_fields
def pk_field(self):
return AdminField(self.form, self.formset._pk_field.name, False)
Modified: django/branches/releases/1.0.X/django/contrib/admin/options.py
===================================================================
--- django/branches/releases/1.0.X/django/contrib/admin/options.py
2008-10-21 20:25:45 UTC (rev 9243)
+++ django/branches/releases/1.0.X/django/contrib/admin/options.py
2008-10-21 20:27:17 UTC (rev 9244)
@@ -585,6 +585,7 @@
change_message = self.construct_change_message(request, form,
formsets)
self.log_change(request, new_object, change_message)
return self.response_change(request, new_object)
+
else:
form = ModelForm(instance=obj)
for FormSet in self.get_formsets(request, obj):
@@ -600,7 +601,7 @@
inline_admin_formset = helpers.InlineAdminFormSet(inline, formset,
fieldsets)
inline_admin_formsets.append(inline_admin_formset)
media = media + inline_admin_formset.media
-
+
context = {
'title': _('Change %s') % force_unicode(opts.verbose_name),
'adminform': adminForm,
Modified:
django/branches/releases/1.0.X/django/contrib/admin/templates/admin/edit_inline/stacked.html
===================================================================
---
django/branches/releases/1.0.X/django/contrib/admin/templates/admin/edit_inline/stacked.html
2008-10-21 20:25:45 UTC (rev 9243)
+++
django/branches/releases/1.0.X/django/contrib/admin/templates/admin/edit_inline/stacked.html
2008-10-21 20:27:17 UTC (rev 9244)
@@ -12,6 +12,7 @@
{% if inline_admin_form.show_url %}
<p><a href="../../../r/{{ inline_admin_form.original.content_type_id }}/{{
inline_admin_form.original.id }}/">{% trans "View on site" %}</a></p>
{% endif %}
+ {% if inline_admin_form.form.non_field_errors %}{{
inline_admin_form.form.non_field_errors }}{% endif %}
{% for fieldset in inline_admin_form %}
{% include "admin/includes/fieldset.html" %}
Modified:
django/branches/releases/1.0.X/django/contrib/admin/templates/admin/edit_inline/tabular.html
===================================================================
---
django/branches/releases/1.0.X/django/contrib/admin/templates/admin/edit_inline/tabular.html
2008-10-21 20:25:45 UTC (rev 9243)
+++
django/branches/releases/1.0.X/django/contrib/admin/templates/admin/edit_inline/tabular.html
2008-10-21 20:27:17 UTC (rev 9244)
@@ -16,7 +16,9 @@
</tr></thead>
{% for inline_admin_form in inline_admin_formset %}
-
+ {% if inline_admin_form.form.non_field_errors %}
+ <tr><td colspan="{{ inline_admin_form.field_count }}">{{
inline_admin_form.form.non_field_errors }}</td></tr>
+ {% endif %}
<tr class="{% cycle row1,row2 %} {% if inline_admin_form.original or
inline_admin_form.show_url %}has_original{% endif %}">
<td class="original">
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/django-updates?hl=en
-~----------~----~----~----~------~----~------~--~---