django开源项目bootcamp个别问题分析(1)
更新:HHH   时间:2023-1-7


@login_required
@ajax_required
def remove(request):
    try:
        feed_id = request.POST.get('feed')
        feed = Feed.objects.get(pk=feed_id)
        if feed.user == request.user:
            likes = feed.get_likes()
            parent = feed.parent
            for like in likes:
                like.delete()
            feed.delete()
            if parent:
                parent.calculate_comments()
            return HttpResponse()
        else:
            return HttpResponseForbidden()
    except Exception:
        return HttpResponseBadRequest()
     
   以上是关于对指定消息的删除的逻辑代码,首先利用feed_id从页面中获取name或则id为feed的元素id。
随后将其与数据库中feed进行比较获取数据库中的元素。判断语句中,将上面的数据库中的相应表的对应
列和从前端页面传来的相应值进行比较,如果条件成真,遍历获取的feed表中的liles列表,最后利用delete
对其进行删除,最后再利用delete将feed表进行删除。


返回开发技术教程...