Get all your project models on one single page with charts and whistles.
Django-admin is a great tool to control your project activity: new orders, comments, replies, users, feedback -- everything is here. The only struggle is to switch between all that pages constantly just to check them out for new entries.
With django-controlcenter you can have all your models on one single page and build beautiful charts with Chartist.js. Actually they don't even have to be a django model, get your data from wherever you want: RDBMS, NOSQL, text file or even from an external web-page, it doesn't matter.
Install django-controlcenter:
pip install -U django-controlcenter
Create a dashboard file with unlimited number of widgets and dashboards:
from controlcenter import Dashboard, widgets
from project.app.models import Model
class ModelItemList(widgets.ItemList):
model = Model
list_display = ('pk', 'field')
class MyDashboard(Dashboard):
widgets = (
ModelItemList,
)
Update settings file:
INSTALLED_APPS = [
...
'controlcenter',
...
]
CONTROLCENTER_DASHBOARDS = (
'project.dashboards.MyDashboard',
)
Plug in urls:
from django.conf.urls import url
from django.contrib import admin
from controlcenter.views import controlcenter
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^admin/dashboard/', controlcenter.urls),
...
]
Open /admin/dashboard/0/
in browser.
Check out docs for more complete examples.
Tested on py 2.7, 3.4, 3.5 with django 1.8, 1.9.
This project uses Chartist.js, Masonry.js and Sortable.js.
Only worthy changes are listed in here.
- Unlimited dashboard support.
- Configuration constructor is moved to a separate project -- django-pkgconf. It's a dependency now.
- Chart
i
series color fix. Thanks to @uncleNight. - Docs. Finally.
- Better responsive experience.
- First public release.