django-admin2/README.rst

46 lines
1.5 KiB
ReStructuredText
Raw Normal View History

2013-05-14 12:12:32 +00:00
===============
django-admin2
===============
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. By starting over, we can avoid the legacy code and make it easier to write extensions and themes.
Basic Pattern
==============
Our goal is to make this API work:
.. code-block:: python
2013-05-14 12:12:32 +00:00
# myapp/admin2.py
2013-05-14 12:37:11 +00:00
# Import the Admin2 base class
from admin2.sites import Admin2
2013-05-14 12:12:32 +00:00
# Import your custom models
from blog.models import Post
2013-05-14 12:37:11 +00:00
# Instantiate the Admin2 class
# Then attach the admin2 object to your model
Post.admin2 = Admin2()
2013-05-14 12:12:32 +00:00
.. note:: You will notice a difference between how and django.contrib.admin and django-admin2 do configuration. The former associates the configuration class with the model object via a registration utility, and the latter does so by adding the configuration class as an attribute of the model object.
Themes
========
The default theme is whatever bootstrap is most current. Specifically:
.. code-block:: python
ADMIN2_THEME_DIRECTORY = "/admin2/bootstrap/"
If you create a new theme, please define it thus:
.. code-block:: python
ADMIN2_THEME_DIRECTORY = "/admin2/foundation/"
REST API
==========
We plan to expose a REST API using Django Rest Framework. From this, you can define new themes powered by the client framework of your choice.