Provides a possibility to open objects in django-admin in read-only mode by default, with a special button "Go to edit mode" to open the same change-object page in regular editable mode.
Project description
django-admin-edit-mode
Allows to open django admin in read-only mode by default, with a special button "Go to edit mode" to open the same change-object page in regular editable mode.
Why read-only mode by default is needed ? For some applications, django-admin serves mostly for reading the info. Readonly mode page looks better (cleaner), doesn't allow to make some changes accidentially, and the page loads quicker (e.g., no need to load a list of choices for the fields). But you're not going to make admin completely readonly (e.g., by persmissions), because sometimes you still want to change the object. Then you can go to edit mode by clicking the button!
Even more suitable edit mode could be on a list page.
For quick multi-object editing you would like to enable changing of some fields on list page
with help of list_editable
. But it will alsways shows you edit mode on list page,
which looks not good (for most times you don't want to change, only look).
This libary provides you with buttons "Go Edit Mode" / "Go Readonly Mode".
Important note: your editable field should not serve as a link to the object, i.e., should not be in list_display_links
or be the first field of list_display
(the same restriction applies to regular Django's list_editable
).
Installation
pip install django-admin-edit-mode
- Add
'django_admin_edit_mode'
toINSTALLED_APPS
, before'django.contrib.admin'
. Order matters for template loading! - Add
'spurl'
toINSTALLED_APPS
. - Check that
'APP_DIRS'
isTrue
inTEMPLATES
settings.
Usage
Use the mixins for the model admins you want to have "readonly by default and edit by clicking button" mode:
import django_admin_edit_mode.admin
# Conditional edit mode enabled on edit object page
@admin.register(models.Book)
class BookAdmin(django_admin_edit_mode.admin.EditModeAdminMixin,
admin.ModelAdmin):
...
# Conditional edit mode enabled on list page
@admin.register(models.Author)
class AuthorAdmin(django_admin_edit_mode.admin.ConditionalListEditableAdminMixin,
admin.ModelAdmin):
...
list_display = ('id', 'name', 'description', 'num_books')
# list_editable = ('list_editable', ) # This you would use for "constant" edit mode
conditional_list_editable = ('list_editable', )
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_admin_edit_mode-0.1.2.tar.gz
.
File metadata
- Download URL: django_admin_edit_mode-0.1.2.tar.gz
- Upload date:
- Size: 15.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.11.5 Darwin/21.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f27bb83c08b4544af8667548a03458afeb1f256a4bf5011c2cba22c9ca5008fc |
|
MD5 | 1365a1b5a1c499ca78222fd01c17ec7f |
|
BLAKE2b-256 | 446e0f3d9bef118080f2e29a13fe05eaf660e813f3140015204e6ff9cc8a3c22 |
File details
Details for the file django_admin_edit_mode-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: django_admin_edit_mode-0.1.2-py3-none-any.whl
- Upload date:
- Size: 18.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.11.5 Darwin/21.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 71a9050644b5ecc5a1fe2f8d4db4f6778a7a6b597748568f65b0a181494ca36f |
|
MD5 | c177e647c63a32e1a1dc31a0154e7778 |
|
BLAKE2b-256 | a5a52f80888a08c7a1bc4f2860107073f96305dcbe3521fbfbf806ea447f4dce |