第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

doesNotExist at /blog/postComment 帖子匹配查詢不存在

doesNotExist at /blog/postComment 帖子匹配查詢不存在

犯罪嫌疑人X 2023-10-05 16:44:16
我正在嘗試打印博客下方的評(píng)論,但單擊提交按鈕后出現(xiàn)上述錯(cuò)誤。我只想在網(wǎng)頁頂部顯示一條成功消息,為此我編寫了以下行:messages.success(request, 'your comment has been added'),但出現(xiàn)錯(cuò)誤!models.py:from django.db import modelsfrom django.contrib.auth.models import Userfrom django.utils.timezone import now# Create your models here.class Post(models.Model):    sno = models.AutoField(primary_key=True)    title = models.CharField(max_length=50)    content = models.TextField()    author = models.CharField(max_length=50)    slug = models.SlugField(max_length=200)    timeStamp = models.DateTimeField(blank=True)    def __str__(self):        return self.title + " by " + self.authorclass BlogComment(models.Model):    sno = models.AutoField(primary_key=True)    comment = models.TextField()    user = models.ForeignKey(User, on_delete=models.CASCADE)    post = models.ForeignKey(Post, on_delete=models.CASCADE)    parent = models.ForeignKey('self', on_delete=models.CASCADE, null=True)    timestamp = models.DateTimeField(default=now)urls.py:from django.urls import path, includefrom blog import viewsurlpatterns = [    path('postComment', views.postComment, name='postComment'),    path('', views.blogHome, name='home'),    path('<str:slug>', views.blogPost, name='blogpost'),]view.py:from django.shortcuts import render, HttpResponse, redirectfrom blog.models import Post, BlogCommentdef blogHome(request):    allpost = Post.objects.all()    context = {'allposts': allpost}    return render(request, 'blog/blogHome.html', context)def blogPost(request, slug):    post = Post.objects.filter(slug=slug).first()    comments = BlogComment.objects.filter(post=post)    context = {'post': post, 'comments': comments}    return render(request, 'blog/blogPost.html', context)
查看完整描述

3 回答

?
慕田峪9158850

TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超7個(gè)贊

你的錯(cuò)誤在模板中。name您的輸入之一設(shè)置錯(cuò)誤:

在你的代碼中:

<input type="hidden" name = "comment" value = "{{post.sno}}">

正確版本:

<input type="hidden" name = "postSno" value = "{{post.sno}}">


查看完整回答
反對(duì) 回復(fù) 2023-10-05
?
FFIVE

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊

將注釋更改為注釋,因?yàn)椤白⑨尅蔽炊x。您正在使用評(píng)論。



查看完整回答
反對(duì) 回復(fù) 2023-10-05
?
鳳凰求蠱

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超4個(gè)贊

為了解決您的第一個(gè)問題,您應(yīng)該將該行post = Post.objects.get(sno=postSno)(在postComment函數(shù)中)更改為:


from django.http import Http404


try:

    post = Post.objects.get(sno=postSno)

except Post.DoesNotExist:

    return Http404("Post does not exist") # or return HttpResponse("Post does not exist")

因?yàn)樵谀承┣闆r下該查詢可能無法返回任何結(jié)果,因此會(huì)引發(fā)DoesNotExistError。第二個(gè)問題(我的意思是NameError at /blog/postComment name 'comments' is not defined)來自相同的函數(shù)...更改此行將comment = BlogComment(comment=comments, user=user, post=post)解決comment = BlogComment(comment=comment or '', user=user, post=post)此問題。


查看完整回答
反對(duì) 回復(fù) 2023-10-05
  • 3 回答
  • 0 關(guān)注
  • 193 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)