Current work is in blender-open-data/wip-dashboards.
Feedback from Sybren:
I don't really see the need to create a separate app for the dashboards. This could just as well be part of the opendata_main app, couldn't it?
In opendata_benchmarks/views/pages.py you now explicitly get a Dashboard and pass it to the template. Would it be a nice idea to have a generic DashboardView class for this, that simply looks at a class attribute dashboard_slug?
The DashboardQuery model now requires the order field to be set. However, it doesn't even check for unique values, so all DashboardQuery objects can have the same value. This is fine, but it does make me wonder why there is no default value then.
DashboardQuery doesn't have a str() function, so they are now all just called 'DashboardQuery object'.
The 'Limit one association of each query per dashboard' todo can be handled by see https://docs.djangoproject.com/en/2.1/ref/models/options/#django.db.models.Options.unique_together
The OpendataDashboardsTests.test_create_dashboard() function doesn't seem to test anything (except Django's ORM, which we don't have to test).