xadmin 设置站点标题连接

默认的Xadmin标题就是用a标签实现的,但是没有地方可以添加href属性,除非修改html文件,这不是我想要的,我想要在Settings类中动态修改,这就需要修改Xadmin的源码了

1. 首先我们要修改一下HTML模板文件

路径:xadmin emplatesxadminase_site.html

<-- ! 在第十行 -->
<a class="navbar-brand" href="">{% block branding %}{{ site_title }}{% endblock %}</a>

<-- ! 改为 -->

<a class="navbar-brand" href="{{ site_link }}">{% block branding %}{{ site_title }}{% endblock %}</a>

2. 修改Xadmin的CommAdminView

路径:xadminviewsase.py

# CommAdminView 类中添加类属性
site_link = '#'

# 在CommAdminView的类方法get_context中将
context.update({
            'menu_template': self.menu_template,
            'nav_menu': nav_menu,
            'site_title': self.site_title,
            'site_footer': self.site_footer,
            'breadcrumbs': self.get_breadcrumb()
        })

# 改为

context.update({
            'menu_template': self.menu_template,
            'nav_menu': nav_menu,
            'site_title': self.site_title,
            'site_footer': self.site_footer,
            'site_link': self.site_link,
            'breadcrumbs': self.get_breadcrumb()
        })

3. 自定义配置类并注册

class GlobalSettings(object):
    """xadmin的全局配置"""
    site_title = "我是标题"  # 设置站点标题
    site_link = "https://www.baidu.com"  # 设置站点url
    site_footer = ""  # 设置站点的页脚
    menu_style = "accordion"  # 设置菜单折叠


xadmin.site.register(views.CommAdminView, GlobalSettings)

4. 完成

原文地址:https://www.cnblogs.com/wtil/p/14148261.html