最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

django 遞歸查詢評論的示例詳解

 更新時間:2025年01月03日 09:47:37   作者:像風一樣的男人@  
文章介紹了將表數據轉換為樹狀結構以及如何處理扁平化數據的方法,探討了在數據管理中的應用和實現技術,感興趣的朋友一起看看吧

表數據

樹狀結構

@action(methods=('GET', ), detail=False)
def get_info_pinglun(self, request, *args, **kwargs) -> Response:
    '''
    根據評論id查所有回復
    @params  wenxian_pinglun_id   -->  評論id;
    '''
    wenxian_pinglun_id = self.request.GET.get('wenxian_pinglun_id')
    results = self._recursion_get_reply(wenxian_pinglun_id)
    return Response({
        'code': 0,
        'msg': 'success',
        'results': results
    })
def _recursion_get_reply(self, wenxian_pinglun_id: int):
    '''遞歸查該評論底下的所有回復'''
    results = []
    queryset = WenxianPinglun.objects.filter(other_pinglun_id=wenxian_pinglun_id) # 獲取該評論下所有回復
    for instance in queryset:
        user = User.objects.get(user_id=instance.user_id)
        other = User.objects.get(user_id=instance.other_id)
        results.append({
            'wenxian_pinglun_id': instance.wenxian_pinglun_id,
            'user__img': user.img,
            'user__nicheng': user.nicheng,
            'other__nicheng': other.nicheng,
            'text': instance.text,
            'children': self._recursion_get_reply(instance.wenxian_pinglun_id)
        })
    return results

扁平化處理

@action(methods=('GET', ), detail=False)
def get_info_pinglun(self, request, *args, **kwargs) -> Response:
    '''
    根據評論id查所有回復
    @params  wenxian_pinglun_id   -->  評論id;
    '''
    wenxian_pinglun_id = self.request.GET.get('wenxian_pinglun_id')
    results = self._recursion_get_reply(wenxian_pinglun_id)
    return Response({
        'code': 0,
        'msg': 'success',
        'results': results
    })
def _recursion_get_reply(self, wenxian_pinglun_id: int):
    '''遞歸查該評論底下的所有回復'''
    results = []
    queryset = WenxianPinglun.objects.filter(other_pinglun_id=wenxian_pinglun_id) # 獲取該評論下所有回復
    for instance in queryset:
        user = User.objects.get(user_id=instance.user_id)
        other = User.objects.get(user_id=instance.other_id)
        results.append({
            'wenxian_pinglun_id': instance.wenxian_pinglun_id,
            'user__img': user.img,
            'user__nicheng': user.nicheng,
            'other__nicheng': other.nicheng,
            'text': instance.text
        })
    for instance in queryset:
        results.extend(self._recursion_get_reply(instance.wenxian_pinglun_id))
    return results

到此這篇關于django 遞歸查詢評論的示例詳解的文章就介紹到這了,更多相關django 評論內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 深入探究Java線程不安全的原因與解決

    深入探究Java線程不安全的原因與解決

    線程不安全這個問題,一般在學Java時,我們老師會讓我們背誦一段長長的話。"當不同線程同時能訪問同一個變量時,可能會導致線程不安全"。實際上,這句話重點想突出的只有原子性。而我們往往考慮線程不安全的原因,會從三方面進行考慮:就是原子性,可見性,有序性
    2022-04-04
  • Spring AI集成DeepSeek三步搞定Java智能應用的詳細過程

    Spring AI集成DeepSeek三步搞定Java智能應用的詳細過程

    本文介紹了如何使用SpringAI集成DeepSeek,一個國內頂尖的多模態(tài)大模型,SpringAI提供了一套統(tǒng)一的接口,簡化了與不同AI模型的集成,通過配置文件和簡單的接口調用,開發(fā)者可以方便地使用DeepSeek進行數學推理、代碼生成等任務,感興趣的朋友一起看看吧
    2025-03-03
  • jvm原理以及jvm調優(yōu)全過程

    jvm原理以及jvm調優(yōu)全過程

    文章解析了JVM原理及調優(yōu)方法,涵蓋堆內存配置(-Xms/-Xmx等)、GC算法選擇(G1、ZGC等)和線程調優(yōu),強調通過分析堆轉儲、調整參數及優(yōu)化回收策略提升性能,解決內存溢出和高GC停頓問題
    2025-09-09
  • 詳解如何使用SpringBoot實現下載JSON文件

    詳解如何使用SpringBoot實現下載JSON文件

    在?Spring?Boot?中實現文件下載功能,可以通過將?JSON?字符串作為文件內容返回給客戶端從而實現JSON文件下載效果,下面我們就來看看具體操作吧
    2025-02-02
  • Java實現文件上傳和url格式校驗工具

    Java實現文件上傳和url格式校驗工具

    這篇文章主要介紹了如何使用Java實現文件上傳和url格式校驗工具,主要用于文件類型校驗,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2026-04-04
  • 詳細解讀Druid數據庫連接池的使用

    詳細解讀Druid數據庫連接池的使用

    這篇文章主要介紹了Druid數據庫連接池的使用,數據庫連接池負責分配、管理和釋放數據庫連接,它允許應用程序重復使用一個現有的數據庫連接,而不是重新建立一個,需要的朋友可以參考下
    2023-03-03
  • java多線程下載文件原理解析

    java多線程下載文件原理解析

    這篇文章主要為大家詳細介紹了java多線程下載文件原理,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • Spring Boot3.0新特性全面解析與應用實戰(zhàn)

    Spring Boot3.0新特性全面解析與應用實戰(zhàn)

    Spring Boot 3.0作為Spring生態(tài)系統(tǒng)的一個重要里程碑,帶來了眾多令人興奮的新特性和改進,本文將深入解析Spring Boot 3.0的核心變化,并通過實戰(zhàn)示例展示如何在項目中應用這些新特性,需要的朋友可以參考下
    2025-07-07
  • Java中對IO流的全面解析

    Java中對IO流的全面解析

    文章介紹了Java中IO流的分類,字符流和字節(jié)流的區(qū)別,以及字符流和字節(jié)流的常用類和方法,本文結合實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2025-09-09
  • 詳析Spring中依賴注入的三種方式

    詳析Spring中依賴注入的三種方式

    在開發(fā)的過程中突然對Spring的依賴注入幾種方式出現混交,打算做個簡單的小結,方便大家和自己以后參考借鑒,如有總結不對的地方,請大家不吝指教!下面來一起看看吧。
    2016-09-09

最新評論

南靖县| 奇台县| 兰州市| 合水县| 治多县| 沂源县| 塘沽区| 卢氏县| 论坛| 文登市| 明星| 黄龙县| 罗源县| 武定县| 育儿| 西吉县| 怀宁县| 雅江县| 潼关县| 浦江县| 河津市| 交口县| 洪洞县| 卓尼县| 巍山| 囊谦县| 上饶县| 青州市| 文登市| 海淀区| 观塘区| 工布江达县| 彩票| 大渡口区| 芮城县| 荆州市| 五台县| 当雄县| 新乐市| 明水县| 蒲江县|