Skip to content

Commit f37a960

Browse files
committed
Cleanup history_form_view()
1 parent ce29aa8 commit f37a960

File tree

1 file changed

+16
-28
lines changed

1 file changed

+16
-28
lines changed

simple_history/admin.py

Lines changed: 16 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -75,18 +75,14 @@ def history_view(self, request, object_id, extra_context=None):
7575
dictionary=context, current_app=self.admin_site.name)
7676

7777
def history_form_view(self, request, object_id, version_id):
78-
original_model = self.model
79-
original_opts = original_model._meta
80-
history = getattr(self.model,
81-
self.model._meta.simple_history_manager_attribute)
82-
model = history.model
83-
opts = model._meta
84-
pk_name = original_opts.pk.attname
85-
record = get_object_or_404(model, **{
86-
pk_name: object_id,
78+
original_opts = self.model._meta
79+
model = getattr(
80+
self.model,
81+
self.model._meta.simple_history_manager_attribute).model
82+
obj = get_object_or_404(model, **{
83+
original_opts.pk.attname: object_id,
8784
'history_id': version_id,
88-
})
89-
obj = record.instance
85+
}).instance
9086
obj._state.adding = False
9187

9288
if not self.has_change_permission(request, obj):
@@ -97,19 +93,13 @@ def history_form_view(self, request, object_id, version_id):
9793
if request.method == 'POST':
9894
form = form_class(request.POST, request.FILES, instance=obj)
9995
if form.is_valid():
100-
form_validated = True
10196
new_object = self.save_form(request, form, change=True)
102-
else:
103-
form_validated = False
104-
new_object = obj
105-
106-
if form_validated:
10797
self.save_model(request, new_object, form, change=True)
10898
form.save_m2m()
10999

110-
change_message = self.construct_change_message(request, form,
111-
formsets)
112-
self.log_change(request, new_object, change_message)
100+
self.log_change(request, new_object,
101+
self.construct_change_message(
102+
request, form, formsets))
113103
return self.response_change(request, new_object)
114104

115105
else:
@@ -122,23 +112,21 @@ def history_form_view(self, request, object_id, version_id):
122112
self.get_readonly_fields(request, obj),
123113
model_admin=self,
124114
)
125-
media = self.media + admin_form.media
126115

127116
try:
128-
model_name = original_opts.module_name
129-
except AttributeError:
130117
model_name = original_opts.model_name
118+
except AttributeError:
119+
model_name = original_opts.module_name
131120
url_triplet = self.admin_site.name, original_opts.app_label, model_name
132-
content_type_id = ContentType.objects.get_for_model(self.model).id
133121
context = {
134122
'title': _('Revert %s') % force_text(obj),
135123
'adminform': admin_form,
136124
'object_id': object_id,
137125
'original': obj,
138126
'is_popup': False,
139-
'media': mark_safe(media),
127+
'media': mark_safe(self.media + admin_form.media),
140128
'errors': helpers.AdminErrorList(form, formsets),
141-
'app_label': opts.app_label,
129+
'app_label': model._meta.app_label,
142130
'original_opts': original_opts,
143131
'changelist_url': reverse('%s:%s_%s_changelist' % url_triplet),
144132
'change_url': reverse('%s:%s_%s_change' % url_triplet,
@@ -154,8 +142,8 @@ def history_form_view(self, request, object_id, version_id):
154142
'has_file_field': True,
155143
'has_absolute_url': False,
156144
'form_url': '',
157-
'opts': opts,
158-
'content_type_id': content_type_id,
145+
'opts': model._meta,
146+
'content_type_id': ContentType.objects.get_for_model(self.model).id,
159147
'save_as': self.save_as,
160148
'save_on_top': self.save_on_top,
161149
'root_path': getattr(self.admin_site, 'root_path', None),

0 commit comments

Comments
 (0)