No project description provided
Project description
SmartAdmin is a set of small Django Admin utilities that aims to remove some of the common annoying configuration issues:
It is not intended to be a fully replacement of the official Admin, but only offers a set of mixin/utilities the often (at least for me) need to be copy/paste in each project.
Bonus
easily group models by context instead by app
display admin logentry for any user
display group members
display user permissions
display permission owners
Display all columns ModelAdmin mixin
log added/removed permissions for User/Group
log added/removed groups for User
ability to set readonly_fields = (‘__all__’,) (ReadOnlyMixin)
display all model fields in changelist (DisplayAllMixin)
automatically creates filter for each indexed field (SmartAutoFilterMixin)
improved fieldset allows the use of __others__ to include any field not included in others fieldsets (FieldsetMixin)
Demo is available at https://django-smart-admin.herokuapp.com/. (Any user/password combination is accepted)
Components
ModelAdmin Mixins
LinkedObjectsMixin
ReadOnlyMixin
FieldsetMixin
DisplayAllMixin
Install
pip install django-smart-admin
or (if you want to install extra admin features)
pip install django-smart-admin[full]
In your settings.py
INSTALLED_APPS = [
# "django.contrib.admin", # removes standard django admin
'django_sysinfo', # optional
'adminactions', # optional
'adminfilters', # optional
'admin_extra_urls', # optional
'smart_admin.apps.SmartLogsConfig', # optional: log application
'smart_admin.apps.SmartTemplateConfig', # templates
'smart_admin.apps.SmartAuthConfig', # optional: django.contrib.auth enhancements
'smart_admin',
.....
]
SMART_ADMIN_SECTIONS = {
'Demo': ['demo', ],
'Security': ['auth',
'auth.User',
],
'Logs': ['admin.LogEntry',
],
'Other': [],
'_hidden_': ["sites"]
}
# add some bookmark
SMART_ADMIN_BOOKMARKS = [('GitHub', 'https://github.com/saxix/django-smart-admin')]
# no special permissions to see bookmarks
SMART_ADMIN_BOOKMARKS_PERMISSION = None
# add 'profile' link on the header
SMART_ADMIN_PROFILE_LINK = True
# display all users action log, not only logged user
SMART_ADMIN_ANYUSER_LOG = True
In your urls.py
import adminactions.actions as actions
from django.contrib.admin import site
admin.autodiscover()
actions.add_to_site(site)
urlpatterns = [
....
path('adminactions/', include('adminactions.urls')),
]
Links
Stable |
||||
Development |
||||
Project home page: |
||||
Issue tracker: |
||||
Download: |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file django-smart-admin-1.4.1.tar.gz
.
File metadata
- Download URL: django-smart-admin-1.4.1.tar.gz
- Upload date:
- Size: 20.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 importlib_metadata/4.3.0 pkginfo/1.5.0.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca8d38b0e8c7cd303c11ad96a93140d9e6321e27a0f360bcf4180acf97168328 |
|
MD5 | d1702cf1438c255ac3a9f7d1295f051f |
|
BLAKE2b-256 | 631da363699ccc5d4d6ed8ab942629a030061b8fb7e861a132f9c374b04ac8dc |