Skip to content

Repository files navigation

django-admin2

Build StatusCoverage Statushttps://pypip.in/v/django-admin2/badge.pnghttps://pypip.in/d/django-admin2/badge.png

One of the most useful parts of django.contrib.admin is the ability to configure various views that touch and alter data. django-admin2 is a complete rewrite of that library using modern Class-Based Views and enjoying a design focused on extendibility and adaptability. By starting over, we can avoid the legacy code and make it easier to write extensions and themes.

Full Documentation at: http://django-admin2.rtfd.org/

Features

  • Rewrite of the Django Admin backend
  • Drop-in themes
  • Built-in RESTful API

Screenshots

Site administrationSelect user

Requirements

Installation

Use pip to install from PyPI:

pipinstalldjango-admin2

Add djadmin2 and rest_framework to your settings file:

INSTALLED_APPS= (
...
'djadmin2',
'rest_framework', # for the browsable API templates'floppyforms', # For HTML5 form fields'crispy_forms', # Required for the default theme's layout
...
)

Add djadmin2 urls to your URLconf:

# urls.pyfromdjango.conf.urlsimportpatterns, includeimportdjadmin2djadmin2.default.autodiscover()
urlpatterns=patterns(
...
url(r'^admin2/', include(djadmin2.default.urls)),
)

How to write django-admin2 modules

# myapp/admin2.py# Import your custom modelsfromdjango.contrib.auth.formsimportUserCreationForm, UserChangeFormfromdjango.contrib.auth.modelsimportUserfrom .modelsimportPost, Commentimportdjadmin2classUserAdmin2(djadmin2.ModelAdmin2):
# Replicates the traditional admin for django.contrib.auth.models.Usercreate_form_class=UserCreationFormupdate_form_class=UserChangeForm# Register each model with the admindjadmin2.default.register(Post)
djadmin2.default.register(Comment)
djadmin2.default.register(User, UserAdmin2)

Drop-In Themes

The default theme is whatever bootstrap is most current. Specifically:

# In settings.pyINSTALLED_APPS+= ('djadmin2.themes.djadmin2theme_default',)
ADMIN2_THEME_DIRECTORY="djadmin2theme_default/"

If you create a new theme, you define it thus:

# In settings.py# Mythical theme! This does not exit... YET!INSTALLED_APPS+= ('djadmin2theme_foundation',)
ADMIN2_THEME_DIRECTORY="djadmin2theme_foundation/"

Support this project!

You can hire the lead maintainer to perform dedicated work on this package. Please email pydanny@cartwheelweb.com.

About

Extendable, adaptable rewrite of django.contrib.admin

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors