Skip to content

Instantly share code, notes, and snippets.

@eladyaniv01
Created June 24, 2020 16:40
Show Gist options
  • Save eladyaniv01/f12dccff36da2fc5cf3de4cbf34c4027 to your computer and use it in GitHub Desktop.
Save eladyaniv01/f12dccff36da2fc5cf3de4cbf34c4027 to your computer and use it in GitHub Desktop.
dashboard example
from django.utils.translation import ugettext_lazy as _
from django.urls import reverse
from grappelli.dashboard import modules, Dashboard
from grappelli.dashboard.utils import get_admin_site_name
class CustomIndexDashboard(Dashboard):
"""
Custom index dashboard for www.
"""
def init_with_context(self, context):
site_name = get_admin_site_name(context)
# append a group for "Administration" & "Applications"
self.children.append(
modules.Group(
_("Group: Administration & Applications"),
column=1,
collapsible=True,
children=[
modules.AppList(
_("Administration"),
column=1,
collapsible=False,
models=("django.contrib.*",),
),
modules.AppList(
_("Applications"),
column=1,
css_classes=("collapse closed",),
exclude=("django.contrib.*",),
),
],
)
)
# append an app list module for "Applications"
self.children.append(
modules.AppList(
_("AppList: Applications"),
collapsible=True,
column=1,
css_classes=("collapse closed",),
exclude=("django.contrib.*",),
)
)
# append an app list module for "Administration"
self.children.append(
modules.ModelList(
_("ModelList: Administration"),
column=1,
collapsible=False,
models=("django.contrib.*",),
)
)
# append another link list module for "support".
self.children.append(
modules.LinkList(
_("Media Management"),
column=2,
children=[
{
"title": _("FileBrowser"),
"url": "/admin/filebrowser/browse/",
"external": False,
}
],
)
)
# append another link list module for "support".
self.children.append(
modules.LinkList(
_("Support"),
column=2,
children=[
{
"title": _("Django Documentation"),
"url": "http://docs.djangoproject.com/",
"external": True,
},
{
"title": _("Grappelli Documentation"),
"url": "http://packages.python.org/django-grappelli/",
"external": True,
},
{
"title": _("Grappelli Google-Code"),
"url": "http://code.google.com/p/django-grappelli/",
"external": True,
},
],
)
)
# append a feed module
self.children.append(
modules.Feed(
_("Latest Django News"),
column=3,
feed_url="http://www.djangoproject.com/rss/weblog/",
limit=5,
)
)
self.children.append(
modules.Feed(
_("Latest Vuejs News"),
column=3,
feed_url="https://vuejsdevelopers.com/feed.xml",
limit=5,
)
)
# append a recent actions module
self.children.append(
modules.RecentActions(
_("Recent Actions"), limit=5, collapsible=False, column=3
)
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment