Django 项目试炼blog -- 评论树的显示
Posted zhuzhiwei-2019
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django 项目试炼blog -- 评论树的显示相关的知识,希望对你有一定的参考价值。
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属性
<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 -- 评论树的显示的主要内容,如果未能解决你的问题,请参考以下文章
Django 项目试炼blog(10) --补充 滑动验证码
Django 项目试炼blog -- 文章详情页1 -- 点赞功能