col*_*rco 2 ruby-on-rails account-management
我正在开发一个画廊,允许用户发布照片,评论,投票和做许多其他任务.
现在我认为允许用户取消订阅并删除所有数据是正确的.但是很难允许这样的事情,因为你冒着破坏你的应用程序的风险(例如,当评论有很多回复时我该怎么办?对于那些由不同用户进行多次修改的页面,我该怎么做?).
照片可以轻松删除,但对于其他数据(即评论,修订......)我认为有三种可能性:
当我们允许用户删除其帐户时,要遵循哪些最佳做法?你如何实现它们(特别是在Rails中)?
我通常通过在用户上设置活动标志来解决这类问题,并在删除用户时简单地将active设置为false.这样,即使用户被"删除",我也会在整个系统中保持参照完整性.在业务层中,我总是在允许用户执行操作之前验证用户是否处于活动状态.我还在检索数据时过滤非活动用户.