感谢您抽出时间查看我的问题。
好的,我正在开发这款iPhone应用程序。我负责服务器端代码。客户端要求解决方案从应用程序中删除私人消息。我为他们创建了一个删除特定邮件的HTTP DELETE。但是此请求会从数据库中删除该消息,这会使两个用户的消息消失,而不仅仅是选择删除它的消息。
我一直在想,但我似乎无法找到最佳解决方案。我需要的是只删除当前用户的消息的解决方案。
我应该在数据库中添加一些列,告诉哪些用户应显示私信?当用户从应用程序中删除该消息时,它只会停止在该用户手机上显示。或者有更好的解决方案吗?
我需要一些头脑风暴的帮助。我希望这是一个好问题。
谢谢!
答案 0 :(得分:1)
应该避免物理删除。我能想到的前几个原因:
您可以实现某种形式的逻辑删除,例如使用额外的关系,例如UserMessage(UserID,MessageID,MessageStatus),其中MessageStatus可以是“未读”,“读取”,“删除”,“重要”,“垃圾邮件“等等(如果您愿意,可以将状态映射到任意整数)。当用户删除邮件时,您只需在UserMessage关系中更改其状态,并从UI端隐藏标记为“已删除”的邮件。