【问题标题】:Add link to main page on grappelli admin在 grappelli admin 上添加指向主页的链接
【发布时间】:2014-01-01 06:59:41
【问题描述】:

在使用 django 的 grappelli 管理界面时,是否有一种简单的方法可以将链接添加回主站点?

所以当用户进入管理界面时

http://myurl/admin/

我想要一个返回到某处的链接

http://myurl/ 

用于主站点。

我认为这样做的唯一方法是编辑 grappelli 模板,对于这样一个简单的任务来说,这感觉非常 hacky。

【问题讨论】:

    标签: django django-grappelli


    【解决方案1】:

    您可以使用grappelli dashboard 在管理索引上创建一个带有自定义链接的框。 安装仪表板后,您可以使用 LinkList 添加链接。

    class CustomIndexDashboard(Dashboard):
    
        def init_with_context(self, context):
            ...
            self.children.append(modules.LinkList(
                _('Links'),
                column=2,
                children=[
                    {
                        'title': u'Homepage',
                        'url': '/',
                        'external': False,
                    },
                ]
            ))
    

    【讨论】:

      【解决方案2】:

      您可以通过将以下内容添加到您的 settings.py 中来添加指向管理员标题(左上角)的链接:

      GRAPPELLI_ADMIN_TITLE = '<a href="/">Homepage</a>'
      

      【讨论】:

      • 简单且效果很好,只是它在窗口的标题中显示了html
      • @Mark 很好发现我以前从未注意到这一点。
      • 您可以尝试使用'&lt;a href="/"&gt;Homepage&lt;/a&gt;&lt;script&gt;document.getElementsByTagName("title")[0].innerHTML = document.getElementsByTagName("title")[0].innerHTML.replace(/\|.*/, "| Site Title")&lt;/script&gt;',但我认为您最好查看覆盖 grappelli 模板。
      猜你喜欢
      • 1970-01-01
      • 2014-10-18
      • 2012-06-30
      • 2017-11-24
      • 1970-01-01
      • 1970-01-01
      • 2021-11-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多