Set of widgets to build dashboards for your Django-project.
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 those pages constantly just to check them out for new entries.
With django-controlcenter you can have all of your models on one single page and build beautiful charts with Chartist.js. Actually they don’t even have to be a django models, get your data from wherever you want: RDBMS, NOSQL, text file or even from an external web-page, it doesn’t matter.
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 = ( ('mydash', 'project.dashboards.MyDashboard'), )
Plug in urls:
from django.urls import path from django.contrib import admin from controlcenter.views import controlcenter urlpatterns = [ path('admin/', admin.site.urls), path('admin/dashboard/', controlcenter.urls), ... ]
Open /admin/dashboard/mydash/ in browser.
Check out the docs for more complete examples.
- Fixed key_value_list.html widget template syntax error.
- Fixed attribute typo widget.chartist.point_labels -> point_lables.
Thanks to @minusf.
- New TimeSeriesChart widget. Thanks to @pjdelport.
- New “simple” widgets: ValueList and KeyValueList. Thanks to @tonysyu.
- Bunch of fixes and improvements, thanks again to @pjdelport.
- Fixed navigation menu links, thanks to @editorgit
- It’s now possible to use slugs for dashboards instead of those indexes in CONTROLCENTER_DASHBOARDS. The old behaviour is supported too.
- It’s compatible with django 1.8—2.1 now
- Custom app name can be passed to ControlCenter class
- Updated column grid, thanks to @pauloxnet.
- Grammar fixes, thanks to @danielquinn.
- It’s should be possible now to use a custom dashboard view with a custom template.
- dashboard.html now extends admin/base_site.html instead of admin/base.html in order to display branding block. Thanks to @chadgh.
- Updated jsonify tag filter, thanks to @k8n.
- Django 1.10 support. Tested in tox only.
- Updated the SingleBarChart example, thanks to @greeve.
- Unlimited dashboards 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.