Skip to content

A Django package to dynamically create admin classes. Including all fields in a model, or all models in an app.

Notifications You must be signed in to change notification settings

appardev/django_admin_autogen

Repository files navigation

Django Admin Autogen

Dynamically register all fields of a model or all models in an app, in Django Admin.

Installation

pip install django_admin_autogen

Usage

Import

from django_admin_autogen.admin import register_all_fields_of_model
from django_admin_autogen.admin import register_all_models_of_app

register_all_fields_of_model

All fields included

register_all_models_of_app

Alt text

Register a model, with all fields included

from django_admin_autogen.autogen.admin import register_all_fields_of_model
# '<app_name>', <ModelName>
fast_part_note_class = register_all_fields_of_model('notebook', 'NoteCategory')

If your model admin requires using custom base class, you

# '<app_name>', <ModelName>, base_class=<YourCustomBaseClass>
fast_part_note_class = register_all_fields_of_model('outsource', 'Quotation', base_class=YourCustomBaseClass)

Override the default behavior by setting custom properties on the YourCustomBaseClass class.

# YourCustomBaseClass 
quotation.field_to_group_by = 'currency__name'
quotation.field_to_sum = 'total_price'

class Media:
    js = (
        'js/add_button.js',
    )

fast_part_note_class.Media = Media

Register all models in an app

Register all models of an app in Django Admin, with all of their fields included

from django_admin_autogen.autogen.admin import register_all_models_of_app

# <app_name>
register_all_models_of_app('outsource')

About

A Django package to dynamically create admin classes. Including all fields in a model, or all models in an app.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages