社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Django

了解Django ModelForm提交

Sushant • 6 年前 • 1803 次点击  

我正在尝试在博客中创建评论系统。这是视图部分。

def post_content(request,post_slug):
   post= Post.objects.get(slug=post_slug)
   new_comment=None

   #get all comments that are currently active to show in the post
   comments= post.comments.filter(active=True)

   if request.method=='POST':
    comment_form= CommentForm(request.POST)
    if comment_form.is_valid():
        # saving a ModelForm creates an object of the corresponding model. 
        new_comment= comment_form.save(commit=False)
        new_comment.post=post
        new_comment.save()

   else:
    comment_form=CommentForm()
return render(request,'blog/post_content.html',{'post':post,'comments':comments,'comment_form':comment_form})

还没有评论。现在,我不明白的是,当我发布评论,然后重新加载页面时,我会立即看到评论(这是我不应该看到的)。

据我所知,这应该是流程——当页面重新加载(提交注释后),它首先转到视图并检索活动注释。( 哪个应该是空的,因为还没有保存过,是吗? )只有当满足if条件且表单有效时,才会保存,如下所示。保存后我还没有检索到评论。但是,仍然, 评论 '变量包含我最近所做的注释。 这是怎么回事?这是什么巫术?请有人给我说清楚!!

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38725
 
1803 次点击  
文章 [ 1 ]  |  最新文章 6 年前