#29917: admin.E130 (__name__ uniqueness) regression
-----------------------------------------------+------------------------
Reporter: Matthias Kestenholz | Owner: nobody
Type: Bug | Status: new
Component: contrib.admin | Version: master
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 0
UI/UX: 0 |
-----------------------------------------------+------------------------
**Short version:** The introduction of admin.E130 (<class
'cabinet.admin.FileAdmin'>: (admin.E130) __name__ attributes of actions
defined in <class 'cabinet.admin.FileAdmin'> must be unique.) makes it
impossible to define `actions` on a base model admin class.
**Longer explanation:**
I have an admin base class which defines an `actions` attribute:
https://github.com/matthiask/django-
cabinet/blob/38d8d4333057d1bb848db0bad88304b05ca3df02/cabinet/base_admin.py#L372
The `actions` attribute isn't overridden in the model admin class which is
actually used:
https://github.com/matthiask/django-
cabinet/blob/38d8d4333057d1bb848db0bad88304b05ca3df02/cabinet/admin.py#L11
So when collecting `actions` from the MRO in ModelAdmin._get_base_actions
https://github.com/django/django/blob/5a2dd5ec5330938e9afb77faf6ca89abf39c018c/django/contrib/admin/options.py#L854
the same `move_to_folder` string is added twice which leads to the
following failure:
https://travis-ci.org/matthiask/django-cabinet/jobs/450169887
The actions dropdown in the administration interface only shows the
`move_to_folder` action once (only tested with Django 2.1 and lower), so
I'd assume that the uniqueness of actions is enforced later somewhere
somehow and the check should probably be reworked to either only check the
final result or to take the MRO into account.
--
Ticket URL: <https://code.djangoproject.com/ticket/29917>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/052.33a57a7a9fe9ffde377fcb8a14d8c9e2%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.