我正在创建一个包含两个表customer和seller的数据库,它们都从使用Django auth用户的用户表继承。 我的问题是,用户可以同时成为客户和卖方吗?
class BaseUser(models.Model):
# have common fields
is_seller = models.BooleanField()
is_customer = models.BooleanField()
class Meta:
abstract = True
class Customer(BaseUser):
# have customer specific fields
class Seller(BaseUser):
# have seller specific fields
答案 0 :(得分:0)
在当前模式下,您提到的答案是“否”,但是您可以拥有
class BaseUser(models.Model):
# have common fields
class Meta:
abstract = True
class Customer(BaseUser):
# have customer specific fields
class Meta:
abstract = True
class Seller(BaseUser):
# have seller specific fields
class Meta:
abstract = True
# this way your user can either inherit customer or seller or both
class User(Seller):
pass
#OR
class User(Buyer):
pass
#OR
class User(Seller, Buyer):
pass
答案 1 :(得分:0)
是的,您可以使用其他模型,例如实体,并且它与客户和卖方具有一对一的关系
class Entity(models.Model):
customer = models.OneToOneField(Customer)
seller = models.OneToOneField(Seller)
现在,您可以使用此模型,也可以自定义用户模型。