我正在设计一个用户发送/接收记录的应用程序,我希望为记录中列出的每个用户分开删除(一个用户的删除不会对另一个用户隐藏记录)。
我的基本模型设计如下所示:
class BasePrivateMessage(TimeStampedModel):
accepted = models.NullBooleanField(default=None, null=True, blank=True)
# fields in question
archived_by_recipient = models.BooleanField(default=False)
archived_by_sender = models.BooleanField(default=False)
read = models.BooleanField(default=False,
help_text='Recipient has viewed.')
recipient = models.ForeignKey('accounts.CommonUserProfile',
related_name='%(class)s_received')
sender = models.ForeignKey('accounts.CommonUserProfile',
related_name='%(class)s_sent')
message_body = models.TextField()
archived_by_xxxx
将字段替换ManyToManyField
为accounts.CommonUserProfile
负责存储隐藏(软删除)记录的用户列表的字段是否会有所改进?似乎这会使客户端代码更简单。通常如何在每个用户的基础上实施软删除?