<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                >[success] # 多對多菜單互相影響 場景,當選著父級菜單,展示對應的自己菜單,兩者互相關聯的狀態 ![](https://box.kancloud.cn/876b2b2e10b0f17e0a32de819eba5ab8_481x128.png) 多級菜單的時候,主要二級菜單是被一級菜單影響,所以所有二級菜單顯示情況根據一級菜單配合展示對應的數據情況 >[success] # 思路代碼 ~~~ 1.當一級菜單選擇全部的情況也就是0-0-0 或者0-1-0 1.1 當0-0-0的時候 展示二級菜單所有項目 1.2 當0-1-0的時候 也展示二級菜單所有項目,但要記錄在查詢數據庫的集合條件中 2.當一級菜單的選擇情況為1-0-0的時候,考慮二級菜單的情況,1-0-0/1-1-0/1-不存在-0 2.1 當二級菜單為0 也就是全部的時候,查詢對應1級菜單中對應的所有二級菜單選項,用來展示在頁面,查詢二級菜單的所有id,用來配合查詢內容展示 2.2 當二級菜單為指定的菜單時 也就是1-1-0,直接保存對應id 2.3 當二級菜單輸入的id不存在的時候,直接設置二級菜單的默認值為全部 3.當一級菜單不存在的時候,直接設置查詢全部 ~~~ >[danger] ##### 代碼展示 ~~~ def index(request,**kwargs): concent = {} for k,v in kwargs.items(): kwargs[k] = int(v) work_id = kwargs['work_id'] language_id = kwargs['language_id'] # 第一種0-0-0 if work_id == 0: obj_language = models.Language.objects.all() # 第二種0-1-0 if language_id : concent['language_id'] = language_id # 第三種 1-0-0 else: obj_work = models.Work.objects.filter(id=work_id).first() if obj_work: # 頁面展示對應標簽 obj_language = obj_work.language.all() # 獲取所有的對應標簽id v = obj_work.language.values_list('id') if v: language_list_id = list(zip(*v))[0] else: language_list_id = [] # 1-0-0 情況 if language_id == 0: concent['language_id__in'] = language_list_id else: # 第四種 1-1-0情況 if language_id in language_list_id: concent['language_id'] = language_id # 第五種 1-1000-0 不存在的情況 else: kwargs['language_id'] = 0 concent['language_id__in'] = language_list_id else: kwargs['language_id'] = 0 kwargs['work_id'] = 0 obj_language = models.Language.objects.all() if kwargs['level_id']!=0: concent['level_id'] = kwargs["level_id"] obj_level = models.Level.objects.all() obj_work = models.Work.objects.all() content = models.Content.objects.filter(**concent) return render( request, "index.html", { "obj_level":obj_level, "obj_work": obj_work, "content": content, "kwargs": kwargs, "obj_language":obj_language, } ) ~~~ >[danger] ##### html展示 ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> a{ display: inline-block; padding: 3px 5px; border:1px solid #dddddd; margin: 5px 5px; } a.active{ background-color:yellowgreen; } </style> </head> <body> <div> {% if kwargs.work_id == 0 %} <a class="active" href="/index/0-{{kwargs.language_id}}-{{kwargs.level_id}}">全部</a> {% else %} <a href="/index/0-{{kwargs.language_id}}-{{kwargs.level_id}}">全部</a> {% endif %} {% for i in obj_work %} {% if kwargs.work_id == i.id %} <a class="active" href="/index/{{i.id}}-{{kwargs.language_id}}-{{kwargs.level_id}}" >{{ i.name }}</a> {% else%} <a href="/index/{{i.id}}-{{kwargs.language_id}}-{{kwargs.level_id}}" >{{ i.name }}</a> {% endif %} {% endfor %} </div> <div> {% if kwargs.language_id == 0 %} <a class="active" href="/index/{{kwargs.work_id}}-0-{{kwargs.level_id}}">全部</a> {% else %} <a href="/index/{{kwargs.work_id}}-0-{{kwargs.level_id}}">全部</a> {% endif %} {% for i in obj_language %} {% if kwargs.language_id == i.id %} <a class="active" href="/index/{{kwargs.work_id}}-{{i.id}}-{{kwargs.level_id}}" >{{ i.name }}</a> {% else%} <a href="/index/{{kwargs.work_id}}-{{i.id}}-{{kwargs.level_id}}" >{{ i.name }}</a> {% endif %} {% endfor %} </div> <div> {% if kwargs.level_id == 0 %} <a class="active" href="/index/{{kwargs.work_id}}-{{kwargs.language_id}}-0">全部</a> {% else %} <a href="/index/{{kwargs.work_id}}-{{kwargs.language_id}}-0">全部</a> {% endif %} {% for i in obj_level %} {% if kwargs.level_id == i.id %} <a class="active" href="/index/{{kwargs.work_id}}-{{kwargs.language_id}}-{{i.id}}">{{ i.name }}</a> {% else%} <a href="/index/{{kwargs.work_id}}-{{kwargs.language_id}}-{{i.id}}">{{ i.name }}</a> {% endif %} {% endfor %} </div> <div> <h1>展示</h1> {% for i in content %} {{ i.title }} {% endfor %} </div> </body> </html> ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看