django-xadmin使用之更改菜单url

环境:xadmin-for-python3 python3.5.2 django1.9.12

1. 在模块的adminx.py文件中增加以下代码:

class AdminSettings(object):
    site_title = 'XXX Data Center'
    site_footer = 'XXX Inc.'
    # menu_style = 'accordion'

    # 菜单设置
    def get_site_menu(self):
        return (
            {'title': 'WISH', 'perm': self.get_model_perm(WishProduct, 'view'), 'menus': (
                {'title': 'Wish商品', 'icon': '', 'perm': self.get_model_perm(WishProduct, 'view'), 'url': self.get_model_url(WishProduct, 'changelist')+'?_p_platform_create_time__gte=2017-01-01 00:00:01&o=-sales_7days'},
            )},
        )

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

 

2. 注意如果你的模块有一个model要定义菜单的url,则所有的model都定义一下,避免出现重复菜单,如果url和框架不一致,要在modeladmin中hidden_menu = True,避免还是会出现两个相同菜单,这样做主要为了少改动框架。

xadmin.site.register(xadmin.views.CommAdminView, AdminSettings)只能出现一次,可以放到一个全局的adminx.py中定义,否则会报已注册的异常。

 

posted @ 2017-08-01 13:42  大棚  阅读(618)  评论(0编辑  收藏  举报