Copyable ModelAdmins for Django models used on Wagtail Sites
Project description
Wagtail CopyableModelAdmin
CopyableModelAdmin is an extension of the Wagtail ModelAdmin that allows for model instances to be copied in the user interface with a "Copy" button.
Dependencies
- Python 3.6+
- Django 1.11+, 2.0+
- Wagtail 1.13+, 2.0+
Installation
- Install wagtail-copyablemodeladmin:
pip install wagtail-copyablemodeladmin
- Add
copyablemodeladminas an installed app in your Djangosettings.py:
INSTALLED_APPS = (
...
'copyablemodeladmin',
...
)
Usage
Please see the Wagtail ModelAdmin documentation for getting started with ModelAdmin.
When creating a ModelAdmin for objects that should be copyable, instead of inheriting from ModelAdmin, inherit from copyablemodeladmin.options.CopyableModelAdmin:
from wagtail.contrib.modeladmin.options import modeladmin_register
from copyablemodeladmin.options import CopyableModelAdmin
from myapp.models import Book
# Inherit from CopyableModelAdmin instead of ModelAdmin
class BookAdmin(CopyableModelAdmin):
model = Book
list_display = ('title', 'author')
list_filter = ('author',)
search_fields = ('title', 'author')
# Now you just need to register your customised ModelAdmin class with Wagtail
modeladmin_register(BookAdmin)
In addition to CopyableModelAdmin, there are three mixin classes that can be added to other custom ModelAdmin subclasses:
from copyablemodeladmin.helpers import CopyButtonHelperMixin
from copyablemodeladmin.options import CopyableModelAdminMixin
from copyablemodeladmin.views import CopyViewMixin
class CustomCopyButtonHelper(CopyButtonHelperMixin, CustomButtonHelper):
pass
class CustomCopyInstanceView(CopyViewMixin, CustomInstanceSpecificView):
pass
class CustomCopyableModelAdmin(CopyableModelAdminMixin, ModelAdmin):
button_helper_class = CustomCopyButtonHelper
copy_view_class = CustomCopyInstanceView
Getting help
Please add issues to the issue tracker.
Getting involved
General instructions on how to contribute can be found in CONTRIBUTING.
Licensing
Credits and references
- Forked from cfgov-refresh
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wagtail-copyablemodeladmin-1.0.0.tar.gz.
File metadata
- Download URL: wagtail-copyablemodeladmin-1.0.0.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4c98d235699ed08aefa1f6c23cecdc513c33c15277e115543531e09d5450a9d3
|
|
| MD5 |
263a2c02b983377c78e52c653d19c5b2
|
|
| BLAKE2b-256 |
dbec9946219cda51415ed54b47d63885248127665b43deccd3b7c43007f19d7a
|
File details
Details for the file wagtail_copyablemodeladmin-1.0.0-py3-none-any.whl.
File metadata
- Download URL: wagtail_copyablemodeladmin-1.0.0-py3-none-any.whl
- Upload date:
- Size: 10.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
afdc43e02bfd54b60655352e7d38f86ade9273fa30b939519eaffb4bcda8296e
|
|
| MD5 |
91185edf823980c1bebceb0fc0bce66f
|
|
| BLAKE2b-256 |
272fedf586ee150746d40ee0cd9b7eea74cf8903acf3c472bd15bcb61c803e27
|