我想制作处理 2 个用户的消息模型。
class User(AbstractUser):
is_confirmed = models.BooleanField(default=False, choices=((True, 'True'), (False, 'False')), blank=True)
verification = models.CharField(max_length=100, null=True, default=None, blank=True)
pass_key = models.CharField(max_length=100, null=True, default=None, blank=True)
language = models.IntegerField(default=0)
def __str__(self):
return self.username
class Admin(User):
extra = models.CharField(max_length=50, null=True, default="")
...
class Client(User):
extra2 = models.CharField(max_length=50, null=True, default="")
...
class ChatMessage(models.Model):
sender = models.ForeignKey(Admin, related_name = 'sender_user', on_delete=models.CASCADE)
receiver = models.ForeignKey(Client, related_name = 'receiver_user', on_delete=models.CASCADE)
message = models.CharField(max_length = 200)
received_at = models.DateTimeField(auto_now_add = True)
session = models.ForeignKey(Session, on_delete=models.CASCADE)
is_read = models.BooleanField()
如何让发送方和接收方可以是管理员或客户端。