Skip to main content

django admin extensions.

Project description

django-fastadmin

django admin extensions.

Install

pip install django-fastadmin

Usage

pro/settings.py

INSTALLED_APPS = [
    ...
    'django_static_jquery3',
    'django_static_ace_builds',
    'django_db_lock',
    'django_fastadmin',
    ...
]
  • Add dependence package names in INSTALLED_APPS.

Installed Admin Extensions

Admin extends

  • UuidFieldSearchableAdmin
  • InlineBooleanFieldsAllowOnlyOneCheckedMixin
  • InlineUniqueChoiceFieldsMixin # @todo
  • DisableDeleteActionMixin
  • InlineEditingHideOriginalMixin
  • DisableInlineEditingInAddingMixin
  • DisableAddPermissionMixin
  • DisableDeletePermissionMixin
  • DisableChangePermissionMixin
  • MarkPermissionsMixin
  • TextFieldAutoHeightMixin
  • TextFieldSetRowColumnMixin
  • ResetToRandomPasswordField
  • EditablePasswordField
  • HideShowField
  • AddAdminViewHelper
  • ToggleFieldStateAdmin
  • SimplePublishModelAdmin
  • SetTopModelAdmin

Widgets

  • AceWidget
  • TitleToCodeWidget

Abstract Models

  • SimpleTask
  • SimplePublishModel

Services

  • SimpleTaskService

Forms

Filters

admin.InlineBooleanFieldsAllowOnlyOneCheckedMixin Usage

  • django_static_jquery3 required in INSTALLED_APPS.
  • Add this mixin to inline class, and put it before TabularInline.
  • Add classes property
    • Add class InlineBooleanFieldsAllowOnlyOneCheckedMixin.special_class_name
    • Add class InlineBooleanFieldsAllowOnlyOneCheckedMixin.field_name_prefix + {field name},
  • Example:
    from django.contrib import admin
    from django_fastadmin.admin import InlineBooleanFieldsAllowOnlyOneCheckedMixin
    
    from .models import Book
    from .models import Category
    
    class BookInline(InlineBooleanFieldsAllowOnlyOneCheckedMixin, admin.TabularInline):
        model = Book
        extra = 0
        classes = [
            InlineBooleanFieldsAllowOnlyOneCheckedMixin.special_class_name,
            InlineBooleanFieldsAllowOnlyOneCheckedMixin.field_name_prefix + "is_best_seller",
            ]
    
    
    class CategoryAdmin(admin.ModelAdmin):
        inlines = [
            BookInline,
        ]
    
    admin.site.register(Category, CategoryAdmin)
    

widget.AceWidget Usage

  • django_static_jquery3 and django_static_ace_builds required in INSTALLED_APPS.
  • Create a model_form, and set the admin's form to the model_form.
  • Set the field to use AceWidget in the model_form.
  • Example:
class BookModelForm(forms.ModelForm):
    class Meta:
        model = Book
        fields = "__all__"
        widgets = {
            "description": AceWidget(ace_options={
                "mode": "ace/mode/yaml",
                "theme": "ace/theme/twilight",
            }),
        }

class BookAdmin(admin.ModelAdmin):
    form = BookModelForm
    list_display = ["title", "published"]

Bug report

Please report any issues at https://github.com/zencore-cn/zencore-issues.

Releases

v0.5.0 2020/10/01

  • Add admin.AddAdminViewHelper.
  • Add admin.ToggleFieldStateAdmin.
  • Add admin.SimplePublishModelAdmin.
  • Add admin.SetTopModelAdmin.

v0.4.0 2020/09/23

  • Add widgets.TitleToCodeWidget.
  • Add models.SimplePublishModel.
  • Add many admin mixins.
  • Add app_requires.

v0.3.2 2020/09/08

  • Add SimpleTaskService.
  • Move service functions from model to service.
  • Upgrade django_db_lock depends.

v0.3.1 2020/09/01

  • Rename zh_hans to zh_Hans.
  • Depends on django-db-lock>=0.3.1.
  • Add django-static-xxx depends.

v0.3.0 2020/09/01

  • Change the directory structure of static files.
  • Add models.SimpleTask. It's an abstract model.
  • jQuery and jQuery plugins are moved to django-static-jquery3>=5.0.0.

v0.2.0 2020/08/25

  • Add widgets.AceWidget.

v0.1.1 2020/08/13

  • Fix jquery.js and jquery.init.js including orders, so that we don't need to change js plugin's source to use django.jQuery.

v0.1.0 2020/08/12

  • First release.
  • Add UuidFieldSearchableAdmin.
  • Add InlineBooleanFieldsAllowOnlyOneCheckedMixin.

Project details


Download files

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

Source Distribution

django-fastadmin-0.5.0.tar.gz (19.9 kB view details)

Uploaded Source

File details

Details for the file django-fastadmin-0.5.0.tar.gz.

File metadata

  • Download URL: django-fastadmin-0.5.0.tar.gz
  • Upload date:
  • Size: 19.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/39.2.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.8

File hashes

Hashes for django-fastadmin-0.5.0.tar.gz
Algorithm Hash digest
SHA256 2289bc6b5ccb65f2449d784352b96f20ff2ab7ef055b40e0073921ee2d06ce6c
MD5 d5bf6d00509ea025ce3156ed15ac4efc
BLAKE2b-256 9cd24feb00c08c2ba89d57c1de533314b7dc51d5dc90bcda1cd3f2f2f36c962c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page