【发布时间】:2021-04-16 01:50:33
【问题描述】:
我无法在帖子的现有评论列表中添加新评论。这是模型:
class Comment(models.Model):
post = models.ForeignKey(Post, on_delete=models.CASCADE, related_name='comments')
body = models.TextField()
commented_by = models.ForeignKey(User, on_delete=models.CASCADE)
commented_on = models.DateTimeField(auto_now_add=True)
def __str__(self):
return f'Commented by {self.commented_by} on {self.post}.'
这是视图:
def post_detail(request, id):
post = Post.objects.get(id=id)
comments = post.comments.all().order_by('-commented_on')
total_comments = post.comments.all().count()
form = CommentForm()
if request.method == 'POST':
form = CommentForm(request.POST, instance=post)
if form.is_valid():
instance = form.save(commit=False)
instance.post = post
instance.save()
context = {
'post' : post,
'comments' : comments,
'form' : form,
'total_comments' : total_comments,
}
return render(request, 'blog/detail.html', context)
【问题讨论】:
标签: django forms model comments rendering