zoukankan      html  css  js  c++  java
  • 面包屑路径导航

    import re
    from django.utils.deprecation import MiddlewareMixin
    from django.shortcuts import HttpResponse,redirect
    from app01.models import Permission
    
    class PermissionMiddleWare(MiddlewareMixin):
        def process_request(self,request):
            current_path = request.path
            for reg in ['/login/','/admin/']:
                ret=re.search(reg,current_path)
                if ret:
                    return None
            user_id=request.session.get('user_id')
            if not user_id:
                return redirect('/login/')
    
            permission_list=request.session.get('permission_list')
    
            request.breadcrumb = []
    
            for item in permission_list:
                reg='^%s$'%item["url"]
                ret=re.search(reg,current_path)
                if ret:
                    show_id=item["pid"] or item["id"]
                    request.show_id = show_id
                    if item["pid"]:
                        pPermission=Permission.objects.filter(pk=item["pid"]).first()
                        request.breadcrumb.extend(
                            [
                                {
                                    'title':pPermission.title,
                                    'url':pPermission.url
                                },
                                {
                                    'title': item['title'],
                                    'url': item['url']
                                }
                            ]
                        )
                    else:
                        request.breadcrumb.append(
                            {
                                'title':item['title'],
                                'url':item['url']
                            }
                        )
                    return None
            return HttpResponse('无权限访问')
    middleware.py
    <ol class="breadcrumb">
                    {% for foo in request.breadcrumb %}
                        <li><a href="{{ foo.url }}">{{ foo.title }}</a></li>/
                    {% endfor %}
    </ol>
  • 相关阅读:
    如何在java类中读取Properties配置文件
    常用网址 转
    我的读书计划
    制作一个半透明遮罩层的库——TipView
    RxJava 中的 subscribeOn 和 observeOn 的区别
    一个操作SQLite数据库的例子
    Java ThreadLocal
    3. 请求与响应
    Java的Volatile关键字
    排序
  • 原文地址:https://www.cnblogs.com/xuqidong/p/12601799.html
Copyright © 2011-2022 走看看