Я пытаюсь создать систему комментариев в блоге. Это раздел просмотра.
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 выполнено и форма действительна, что все ниже. И я не получил комментарии после сохранения. Но все же переменная ' comments ' содержит последний комментарий, который я сделал.
Как это происходит? Что это за колдовство ? Пожалуйста, кто-нибудь, дайте мне понять !!