NameError: name 'Comment' is not defined помогите исправить(10-ая винда)

Plombir49kopeek

Новичок
Пользователь
Июл 14, 2020
10
1
3
Python:
from django.db import models


class Task(models.Model):
    title = models.CharField('Название', max_length=50)
    task = models.TextField('Описание')

    def __str__(self):
        return self.title


class Comment(models.Model):
    post = models.ForeignKey(Comment,on_delete=models.CASCADE,related_name='comments')
    name = models.CharField(max_length=80)
    email = models.EmailField()
    body = models.TextField()
    created = models.DateTimeField(auto_now_add=True)
    updated = models.DateTimeField(auto_now=True)
    active = models.BooleanField(default=True)

    class Meta:
        ordering = ('created',)

    def __str__(self):
        return 'Comment by {} on {}'.format(self.name, self.post)
 

Jerry

Пользователь
Пользователь
Июл 28, 2020
29
12
3
Подозреваю, что ошибка в строке
post = models.ForeignKey(Comment,on_delete=models.CASCADE,related_name='comments')

Если в качестве внешнего ключа в классе нужно указать самого себя, документация предписывает использовать первым аргументом 'self':
To create a recursive relationship – an object that has a many-to-one relationship with itself – use models.ForeignKey('self', on_delete=models.CASCADE).
 

Форум IT Специалистов