Django 在同一个文件中模拟 NameERROR?

Django models NameERROR in the same file?

大家好,我在这段代码中出现了名称错误,有人可以解释一下原因吗???

category = models.ManyToManyField(Category) NameError: name 'Category' is not defined


from django.db import models
from datetime import datetime
# Create your models here.

class Store(models.Model):
    business_name = models.CharField(max_length=100, null=False, verbose_name='Nombre')
    nit = models.PositiveIntegerField(null=False,default=0,verbose_name='NIT')
    category = models.ManyToManyField(Category)
    def __str__(self):
        return self.business_name

    class Meta:
        db_table = 'Store'
        verbose_name = 'Tienda'
        verbose_name_plural = 'Tiendas'
        ordering = ['id']

class Category(models.Model):
    name = models.CharField(max_length=150, verbose_name='Name')

    def __str__(self):
        return self.name
    
    class Meta:
        verbose_name = 'Categoria'
        verbose_name_plural = 'Categorias'
        ordering = ['id']

感谢您的评论

当 python 正在读取文件时,它到达 category = models.ManyToManyField(Category) 但还不知道类别是什么,

在存储之前移动类别 class,一切都会起作用。