crm 一级菜单排序,二级菜单选中并且展开,非菜单权限的归属,权限粒度控制到按钮级别

排序

/rbac/templatetags/rbac.py

from django import template
from django.conf import settings
import re
from collections import  OrderedDict
register = template.Library()


@register.inclusion_tag('rbac/menu.html')
def menu(request):
    ordered_dict=OrderedDict()
    menu_dict = request.session[settings.MENU_SESSION_KEY]
    # print(menu_dict,'111')
    ret=sorted(menu_dict,key=lambda x:menu_dict[x]['wight'],reverse=True)

    #俺排好序的 进行写   然后按 有序字典 写
    for i in ret:
        ordered_dict[i]=menu_dict[i]
    return {'menu_list': ordered_dict.values()}#返回有序字典

    for item in ordered_dict.values():
        for i in item['children']:
            if re.match(r'^{}$'.format(i['url']),request.path_info):
                i['class']='active'

 二级单选中展开

layout.html

<script>
    $('.multi-menu .title').click(function () {
        $(this).next().removeClass('hide');
        $(this).parent().siblings().find('.body').addClass('hide')
    })
</script>

可以写入menu.js

 ###########

 

猜你喜欢

转载自www.cnblogs.com/zaizai1573/p/10575760.html
CRM