The siteinfo
site app enables system administrators and developers to view site details and statistics gathered from project and backend apps.
The app renders a site which displays information and statistics regarding the site and installed SODAR apps. Providing app statistics for siteinfo done via implementing the get_statistics()
function in your app plugins. Currently, access to the app is limited to site administrators.
Warning
To install this app you must have the django-sodar-core
package installed and the projectroles
app integrated into your Django site. See the projectroles integration document <app_projectroles_integration>
for instructions.
The siteinfo app is available for your Django site after installing django-sodar-core
. Add the app into THIRD_PARTY_APPS
as follows:
THIRD_PARTY_APPS = [
# ...
'siteinfo.apps.SiteinfoConfig',
]
In the Django URL configuration file, add the following line under urlpatterns
to include siteinfo URLs in your site.
urlpatterns = [
# ...
url(r'^siteinfo/', include('siteinfo.urls')),
]
To migrate the Django database and register the siteinfo site app plugin, run the following management command:
$ ./manage.py migrate
In addition to the database migration operation, you should see the following output:
Registering Plugin for siteinfo.plugins.SiteAppPlugin
When logged in as a superuser, you can find the "Site Info" link in your user dropdown menu in the top right corner of the site.
This application is not available for users with a non-superuser status.
In your project app or backend plugin, implement the get_statistics()
function. It should return a dictionary containing, for each statistics item, a program friendly key and certain member fields:
label
: Human readable label for the statistics item.value
: The value to be renderedurl
: The url to link to from the value for additional information (optional)description
: Additional information (optional)
Example:
def get_statistics(self):
return {
'stat_id': {
'label': 'Some statistic',
'value': 9000,
'url': reverse('home'),
'description': 'More information here'
}
}