如何在 DetailView 中加载评论表单?

How to load a comment form in DetailView?

我能够加载通过管理页面添加的评论,但我无法在 DetailView 本身中创建表单

我已尝试在详情视图模板中添加表单,但我仍然没有在站点中看到该表单

#views.py
class MessageDetailView(DetailView):
    model = Message
    template_name = "messaging/detail.html"
    #queryset = Message.objects.all()

    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        context['comments'] = Comment.objects.filter(message=self.object)
        return context
#detail.html
<form method="POST">
                {% csrf_token %}
                <h3>Write a New Comment</h3>
                <div class="messagebox">
                        {{ form|crispy }}
                        <button class="btn" type="submit">
                            Post Comment
                        </button>
                </div>
            </form>
#forms.py
class CommentForm(forms.ModelForm):
    class Meta:
        model = Comment
        fields = ("comment")
#models.py
class Comment(models.Model):
    message = models.ForeignKey(Message,on_delete=models.CASCADE)
    comment = models.TextField(max_length=50)
    date_posted = models.DateTimeField(default=timezone.now)

    def __str__(self):
        return "Comment on {}".format(str(self.date_posted))

站点加载了评论,但是没有加载表单,有什么办法可以解决这个问题?请在答案中提供一些代码,而不仅仅是将我链接到纪录片。

您没有将表单传递给您的模板:

def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        context['comments'] = Comment.objects.filter(message=self.object)
        context['form'] = CommentForm()
        return context