我有 5 个类(class),Customer , Supplier , Order , Design和 OutSource . Order有 3 个关系,与 Customer 一对一, 多对多 Design与 OutSourse 一对一.首先我只是添加了它s one to one relationship with客户(customer=models.ForeignKey(Customer)), now I wanna add the those 2 relationships with设计and外包`.
design=models.ManyToManyField(Design)
outSource=models.OneToOneField(OutSource)
当我这样做并运行“makemigrations”命令时,我得到了这个错误-->“NameError:name“Design”未定义” 没有这两行代码,我可以毫无问题地迁移……不知道我哪里出错了。 任何帮助将不胜感激。
模型.py
class Order(models.Model):
o_type=models.CharField(max_length=15, verbose_name='Order type')
number=models.IntegerField()
date=models.DateField()
status=models.CharField(max_length=25)
delivery_date=models.DateField()
customer=models.ForeignKey(Customer)
design=models.ManyToManyField(Design)
outSource=models.OneToOneField(OutSource)
class Design(models.Model):
dimension=models.IntegerField()
image=models.ImageField(upload_to='images/%Y/%m/%d')
number_of_colors=models.IntegerField()
sides=models.IntegerField(verbose_name='side(s)')
class OutSource(models.Model):
date=models.DateField()
number=models.IntegerField()
description=models.CharField(max_length=100)
code=models.IntegerField()
supplier=models.ForeignKey(Supplier)
请您参考如下方法:
您在实际定义ManyToManyField 关系之后声明类Design。它找不到名称为 Design 的类,因此找不到 NameError。
在 Order 类之前声明 Design 类,事情应该适合你。
