Really full Django read only admin implementation
Project description
django-read-only-admin is a Django reusable application that fully implement read only admin
Installation
Obtain your copy of source code from the git repository: $ git clone https://github.com/vint21h/django-read-only-admin.git. Or download the latest release from https://github.com/vint21h/django-read-only-admin/tags/.
Run $ python ./setup.py install from the repository source tree or the unpacked archive. Or use pip: $ pip install django-read-only-admin.
Configuration
Add "read_only_admin" to settings.INSTALLED_APPS.
# settings.py
INSTALLED_APPS += [
"read_only_admin",
]
Run $ python ./manage.py migrate.
Then add user/group change/delete/add/readonly model permissions.
Settings
- READ_ONLY_ADMIN_PERMISSION_PREFIX
Read-only permission prefix. Defaults to: "readonly".
- READ_ONLY_ADMIN_PERMISSION_NAME_PREFIX
Read-only permission name prefix. Defaults to: "Read only".
- READ_ONLY_ADMIN_EMPTY_ACTIONS
Empty admin actions list (exclude superusers) or just remove delete selected action. Defaults to: True.
Usage
Just inherit your custom Django admin class from read_only_admin.admin.ReadonlyAdmin.
# admin.py
from read_only_admin.admin import ReadonlyAdmin
class MyCustomAdmin(ReadonlyAdmin):
...
Also tabular and stacked inlines are supported.
# admin.py
from read_only_admin.admin import (
ReadonlyStackedInline,
ReadonlyTabularInline,
)
class MyCustomTabularInline(ReadonlyTabularInline):
model: Type[Model] = MyModel
extra: int = 0
class MyCustomStackedInline(ReadonlyStackedInline):
model: Type[Model] = MyModel
extra: int = 0
If you use list_editable in your custom admin classes, copy read_only_admin/templates/admin/pagination.html to your project templates/admin directory.
Contributing
Install GNU Make
Install and configure pyenv and pyenv-virtualenv plugin
Install and configure direnv
Create environment config from example
cp .env.example .env
Install development dependencies:
make install
Create your fix/feature branch:
git checkout -b my-new-fix-or-feature
Check code style and moreover:
make check
Run tests:
make test
Push to the branch:
git push origin my-new-fix-or-feature
Licensing
django-read-only-admin uses the MIT license. Please check the MIT-LICENSE file for more details.
Some part of code fairly stolen from teh internets with reference to the source. So, if you author of this code, please contact me.
Contacts
Project Website: https://github.com/vint21h/django-read-only-admin/
Author: Alexei Andrushievich <vint21h@vint21h.pp.ua>
For other authors list see AUTHORS file.
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
Built Distribution
File details
Details for the file django-read-only-admin-0.17.5.zip
.
File metadata
- Download URL: django-read-only-admin-0.17.5.zip
- Upload date:
- Size: 28.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b181d7153bb27d59c2820ca12d58af6805f9f50b43d786221981722a337862e4 |
|
MD5 | c9c5301c63930a69775b01776fadd4b4 |
|
BLAKE2b-256 | 2851feceecdcd5103881769fdf10eb17675336231621821756ba67eaaab32786 |
File details
Details for the file django_read_only_admin-0.17.5-py3-none-any.whl
.
File metadata
- Download URL: django_read_only_admin-0.17.5-py3-none-any.whl
- Upload date:
- Size: 16.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 912998774ec86790e451aa616524cde8b9e0fe08a6bfb1ce8960abe77702c963 |
|
MD5 | 1fbfcaeba66ff33299955866166ec09b |
|
BLAKE2b-256 | af86114287aa7111dcee44aaf444b7df8b5b3888fbacb28aefa66cf6eae44be2 |