您当前的位置: 首页 >  django

IT之一小佬

暂无认证

  • 2浏览

    0关注

    1192博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Django博客系统(发表评论)

IT之一小佬 发布时间:2021-10-03 01:55:32 ,浏览量:2

1. 发表评论接口设计

1.请求方式

选项方案请求方法POST请求地址/detail/

2.请求参数:表单

参数名类型是否必传说明user_idstring是发表评论的用户idarticle_idstring是评论的文字idcontentstring是评论内容

3.响应结果:HTML

字段说明提交失败响应错误提示提交成功刷新页面展示 2. 发表评论接口实现

1.发表评论实现

from home.models import Comment,Article
class DetailView(View):

    def post(self,request):
        #获取用户信息
        user=request.user

        #判断用户是否登录
        if user and user.is_authenticated:
            #接收数据
            id=request.GET.get('id')
            content=request.POST.get('content')

            #判断文章是否存在
            try:
                article = Article.objects.get(id=id)
            except Article.DoesNotExist:
                return HttpResponseNotFound('没有此文章')

            #保存到数据
            Comment.objects.create(
                content=content,
                article=article,
                user=user
            )
            #修改文章评论数量
            article.comments_count+=1
            article.save()
            #拼接跳转路由
            path=reverse('home:detail')+'?id={}'.format(article.id)
            return redirect(path)
        else:
            #没有登录则跳转到登录页面
            return redirect(reverse('users:login'))

2.detail.html修改

 
    {% csrf_token %}
                
关注
打赏
1665675218
查看更多评论
0.1852s