Rails:如何在批准之前保留不同的新/更新记录? [关闭]

问题描述 投票:1回答:1

我现在正在研究非标准(至少对我来说)问题。我将创建系统,其中任何用户配置文件更改(或帐户创建)将被批准以及其子记录。

例如 -

  1. 用户有兴趣/改变一些东西>>
  2. 状态更改为“审核”>>
  3. 尚未应用的更改>>
  4. 管理员评论的东西>>
  5. 批准>>
  6. 已应用更改。

当创建/更新子对象时 - 我们得到所有相同的过程。

我正在考虑不同的想法(存储序列化哈希中的更改,使用paper_trail的版本),但我想出的所有内容都非常混乱。

只是想知道是否有人做了类似的事情 - 最简洁的方法是什么?

ruby-on-rails review
1个回答
3
投票

我将使用镜像表'UsersChanges'与'User'的1对1关系和相同的id。

如果任何用户与“UsersChanges”有关系,则您知道用户已提交更改(仅需要计数)。

如果你想知道他们的变化,你必须使用相同的id查看另一个表('UsersChanges')。

当批准更改时,您只需复制数据并删除“UsersChanges”行。

对数据使用哈希可能更复杂,您必须验证哈希,并且您将使用'magical strings'来创建模型。

希望能帮助到你

© www.soinside.com 2019 - 2024. All rights reserved.