在我的问题中,我有一个User模型,其中用户(登录)可以来自"供应商"公司,也可以来自"客户"公司。
对于两组表:User-Customer和User-Supplier来说,这是一个M2M关系。
我可以这样链接它们吗?
company = models.ManyToManyField(Customer, Supplier, on_delete=models.PROTECT, related_name='Users')
输入图片描述
谢谢! !
你不能那样做。
一个更好的方法是,如果您使用Supplier
和Customer
类型的Company
模型,您可以为此创建一个enum,因为您在两个模型中使用相同的字段,因此在单个模型中具有类型是很好的。
如何在TextChoices模型中创建enum
Company:
name
address
contact name
type
然后在你的User
模型
company = models.ManyToManyField(Company, on_delete=models.PROTECT, related_name='Users')
这样更有意义。