Skip to main content

django-smart-admin

Pypi coverage Test

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 copied/pasted 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)
  • ability to customise Autocomplete labels
  • user defined "site panels"

Components

  • 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_buttons',  # optional

    'smart_admin.apps.SmartTemplateConfig',  # templates
    'smart_admin',  # use this instead of 'django.contrib.admin'

    'smart_admin.apps.SmartLogsConfig',  # optional:  log application
    'smart_admin.apps.SmartAuthConfig',  # optional: django.contrib.auth enhancements

]
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

from django.contrib import admin
from django.urls import include, path
import adminactions.actions as actions
from django.contrib.admin import site

admin.autodiscover()
actions.add_to_site(site)

urlpatterns = [
    path('', admin.site.urls),
    path('adminactions/', include('adminactions.urls')),
]

Project Links

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_smart_admin-3.1.tar.gz (26.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_smart_admin-3.1-py3-none-any.whl (47.9 kB view details)

Uploaded Python 3

File details

Details for the file django_smart_admin-3.1.tar.gz.

File metadata

  • Download URL: django_smart_admin-3.1.tar.gz
  • Upload date:
  • Size: 26.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for django_smart_admin-3.1.tar.gz
Algorithm Hash digest
SHA256 b412c540b54832ec3f368891c5301b0740f8cf299c5334e7902120fda41f6f59
MD5 8c76797e712a85963d1750cb6100c904
BLAKE2b-256 3aa303cff8509b92ec28e82d0bdd9c9414fad8bcbfd2bbada908d28f99332c75

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_smart_admin-3.1.tar.gz:

Publisher: release.yml on saxix/django-smart-admin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file django_smart_admin-3.1-py3-none-any.whl.

File metadata

File hashes

Hashes for django_smart_admin-3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 efe4997682cabca1ea212017619614cfb3fa2aee999089602809e503cd01bad4
MD5 ea90868497fe5ba9e0aa95672236e4d2
BLAKE2b-256 970971ae13f463574a38c697c50a723b79782e3d5baa1c8f94004183bc4bd5e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_smart_admin-3.1-py3-none-any.whl:

Publisher: release.yml on saxix/django-smart-admin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

3.1 This release

2 files

3.0

2 files

2.6.0

1 file

2.5.0

1 file

2.4.1

1 file

2.4.0

1 file

2.3.1

1 file

2.3.0

1 file

2.2.3

1 file

2.2.2

1 file

2.2.1

1 file

2.2.0

1 file

2.1.0

1 file

2.0.2

1 file

2.0.1

1 file

2.0.0

1 file

1.9.2

1 file

1.9.1

1 file

1.9.0

1 file

1.8.0

2 files

1.7.0

2 files

1.6.0

1 file

1.5.0

1 file

1.4.4

1 file

1.4.2

1 file

1.4.1

1 file

1.4.0

1 file

1.3.0

1 file

1.2.1

1 file

1.2.0

1 file

1.1.0

1 file

1.0.0

1 file

0.6.0

1 file

0.5.0

1 file

0.4.0

1 file

0.3.0

1 file

0.2.1

1 file

0.1.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page