IntegrityError at /forum/post/15/comment/new/: NOT NULL constraint failed: forum_comment.name_id
Я пытаюсь реализовать функцию комментирования для своего проекта в стиле блога, но получаю следующую ошибку:
IntegrityError at /forum/post/15/comment/new/
NOT NULL constraint failed: forum_comment.name_id
Я подозреваю, что ошибка как-то связана с автором комментария, потому что я читал похожие посты, где проблема была именно в этом, однако я не смог полностью понять или адаптировать их проблему к своей из-за того, как я настроил свои комментарии.
Вот как выглядит моя установка проекта:
models.py:
class Post(models.Model):
titulo = models.CharField(max_length=150)
contenido = MarkdownxField()
date_posted = models.DateTimeField(default=timezone.now)
author = models.ForeignKey(User, on_delete=models.CASCADE)
def formatted(self):
return markdownify(self.contenido)
def __str__(self):
return self.titulo
def get_absolute_url(self):
return reverse("post-detail", kwargs={"pk": self.pk})
class Comment(models.Model):
post = models.ForeignKey(Post, related_name="comments", on_delete=models.CASCADE)
name = models.ForeignKey(User, on_delete=models.CASCADE)
body = MarkdownxField()
date_added = models.DateTimeField(default=timezone.now)
def __str__(self):
return '%s - %s' % (self.post.titulo, self.name)
views.py:
class CommentCreateView(CreateView):
model = Comment
form_class = CommentForm
#fields = ['body']
template_name = "forum/comment_form.html"
class Meta:
ordering=['-time']
def form_valid(self, form):
form.instance.post = Post.objects.get(pk=int(self.kwargs['pk']))
return super().form_valid(form)
def get_success_url(self):
return reverse_lazy('')
forms.py:
class CommentForm(forms.ModelForm):
class Meta:
model = Comment
fields = ['body']
widgets = {
'body': MarkdownxField()
}
urls.py:
path('post/<int:pk>/comment/new/', CommentCreateView.as_view(), name='comment-create'),
Любая помощь будет очень признательна, заранее спасибо...