Это потому, что Category
не определен до анализа Package
.
Python анализирует файл сверху вниз.Следовательно, класс Category
не будет определен, когда определено отношение Packages
в категориях ManyToManyField
.
Вы можете переместить класс Category
над классом Package
или заключить это отношение в кавычки , поэтому он лениво загружается после создания класса, например:
categories = models.ManyToManyField('Category',related_name="packages")
См. Ссылку на ForeignKey здесь .