Views
def get_tree_data(request): article_id = request.GET.get(‘article_id‘) send_data = list(Comment.objects.filter(article_id=article_id).values(‘pk‘,‘content‘,‘parent_comment_id‘)) return JsonResponse(send_data,safe=False)
ORM生成的的是queryset对象,而非真正的集合对象。
JsonResponse传输list对象,需要添加safe属性
HTML
<div class="list-group"> <p class="tree">评论树</p> <div class="comment_tree"></div> </div> <script> $(‘.tree‘).click(function () { $.ajax({ url:‘/get_tree_data/‘, type:"get", data:{ ‘article_id‘:{{ art_obj.pk }} }, success:function (data) { console.log(data); $.each(data,function (index,comment_obj) { var pk = comment_obj.pk; var content = comment_obj.content; var parent_comment_id = comment_obj.parent_comment_id; var s = ‘<div class="tree_item" comment_id=‘+pk+‘><span>‘+content+‘</span></div>‘; if(!parent_comment_id){ $(‘.comment_tree‘).append(s) }else{ $(‘[comment_id=‘+parent_comment_id +‘]‘).append(s) } }) } }) }) </script>
1、自定义标签属性,给父评论追加标识
2、利用jquery的属性选择器,追加样式
Django 项目试炼blog(8) -- 评论树的显示
原文地址:https://www.cnblogs.com/zhuzhiwei-2019/p/10777314.html
时间: 2024-11-08 17:01:34