Opened 8 years ago

Last modified 8 years ago

#27273 closed Cleanup/optimization

Make usage of construct_change_message easier outside of admin — at Initial Version

Reported by: Alexey Rogachev Owned by: nobody
Component: contrib.admin Version: dev
Severity: Normal Keywords: admin, form
Cc: Triage Stage: Accepted
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

I use django-reversion library in one of my projects. In admin it uses ModelAdmin's change message generated by construct_change_message method as revision comment. Besides admin I also need to generate same change message on object creation / editing on frontend part of a site.

Using construct_change_message outside of admin is now possible like that:

from django.contrib.admin import AdminSite
from enterprises.admin import EnterpriseAdmin

comment = EnterpriseAdmin(enterprise, AdminSite).construct_change_message(request, form, formsets, create)

enterprise is either created or edited model, create - boolean variable (True when create and False otherwise).

I think it's not clean to refer to admin from frontend like that.

As a suggestion, we can move the method outside of a class. It does not use self also.

Another option is to make this method static, but this will just reduce a bit of code, and problem of referring from frontend to admin will still present.

Change History (0)

Note: See TracTickets for help on using tickets.
Back to Top