Ссылка на модель MPTT в другой обычной модели?Джанго - PullRequest
0 голосов
/ 07 марта 2019

Я использую django-mptt в качестве утилиты для классификации моих статей. Моя модель настроена следующим образом:

class Genre(MPTTModel):
    name = models.CharField(max_length=100, unique=True)
    parent = TreeForeignKey('self', on_delete=models.CASCADE, null=True, blank=True, related_name='children')

class Article(models.Model):
    url = models.URLField(max_length=300)
    text = models.TextField()
    title = models.CharField(max_length=500, blank=True)

Теперь мой вопрос: если у меня есть, например, следующая иерархия: «Политика> Выборы> SomeCountry», и у меня есть статья с категорией «SomeCountry», я должен добавить в поле Article модель ForeignKey :

    category = models.ForeignKey('Genre', blank=True, null=True, on_delete=models.CASCADE)

И поэтому мне нужно установить значение поля category статьи как SomeCountry.

Или я должен добавить ManyToManyField к модели Article:

    category = models.ManyToManyField('Genre', blank=True)

И, таким образом, я должен установить значение для поля категории статьи как ['Politic', 'Election', 'SomeCountry'].

...