注销用户的标准操作应该是?

注销一个用户,我的设想

A: 数据表里面关联该用户的数据都删除,但是如果和别人有互动的数据也删除了会出问题,就算不删除,关联该用户的信息也没有了

B:不删除数据,只是标记为注销,但是,和该用户互动的用户怎么显示这个人的信息,比如说互评?

C:只标记注册的手机号或邮箱号,让他可以再注册,但是,互动的用户哪里应该怎么表示?,而且这堆相关了数据貌似也没用了

大家是怎么处理这个问题的?

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
巴啦啦
最佳答案

1.用户表仅保留id,其他数据改为已注销,比如昵称。这样就保留了和其他模块的关联关系 2.相关联的数据,比如聊天记录,或相互留言等,均改为该账号已注销。

2年前 评论
臭鼬 (楼主) 2年前
邢闯洋 2年前
巴啦啦 (作者) 2年前
讨论数量: 17
巴啦啦

1.用户表仅保留id,其他数据改为已注销,比如昵称。这样就保留了和其他模块的关联关系 2.相关联的数据,比如聊天记录,或相互留言等,均改为该账号已注销。

2年前 评论
臭鼬 (楼主) 2年前
邢闯洋 2年前
巴啦啦 (作者) 2年前
  • B 相对来说好些,就是标记该用户已经删除,手机号和昵称都可以初始化一下,比如改成“已注销”,因为本质上还是用 数据库的用户id来区分用户。
  • C 如果用户自己注销啦,那么如果想要支持用同一个手机号重新注册,应该是一个全新的账号信息。
2年前 评论
巴啦啦

1.用户表仅保留id,其他数据改为已注销,比如昵称。这样就保留了和其他模块的关联关系 2.相关联的数据,比如聊天记录,或相互留言等,均改为该账号已注销。

2年前 评论
臭鼬 (楼主) 2年前
邢闯洋 2年前
巴啦啦 (作者) 2年前

将你的用户表完全分开

users 表示 所有用户表 但没有用户信息,仅有用户id 注册时间等不敏感信息

user_profile 用户资料 用于存储 性别姓名等资料信息

wechat_user 微信用户 主要存储 openid user_id wechat_info 等信息

wxapp_user 小程序用户 同上

mobile_user 手机号码用户 同上

。。。以此类推

用户注销的时候 (软) 删除掉 || 更新 user 表信息即可。

其他信息保留与否看你自己了。

2年前 评论
臭鼬 (楼主) 2年前
陈先生 (作者) 2年前
臭鼬 (楼主) 2年前
陈先生 (作者) 2年前

用户名称就显示为「某注销用户」吧

2年前 评论

2L已经给出标准答案了,如果是user单表,注销修改该条记录即可(状态,昵称,头像)。

2年前 评论

我做的是把手机号和邮箱解绑,用户标记为已注销,其他关联数据不变,比如文章展示那些正常展示(在昵称后面加个括号显示此用户已注销),如果有好友系统,就解绑所有与他关联的好友,以后再用之前的邮箱或者手机号注册就是新账号了

2年前 评论
臭鼬 (楼主) 2年前
一念沧海一念桑田 (作者) 2年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!