Rails,管理模型更新的历史

时间:2013-07-02 12:27:52

标签: ruby-on-rails updates updatemodel

我不确定在我的情况下最好的方法是什么,我想要一个意见。

我的情况是:

我有一个“Ticket”模型,有多种类型的字段:文本,数字和关联。门票通过acts_as_commentable gem支持评论。

tickets由用户生成,用户可以评论和修改自己的门票。

由于ticket的字段可能会随时间发生变化,因此我希望允许我的用户修改其中的几个字段。我需要的是保留所有更改的注释历史记录,这样他们可以随时在票证中看到更改的内容,原因和时间,以及他们可以一起看到的注释,时间戳和更改列表。评价。

我正在考虑通过生成“TicketUpdate”模型来解决此问题,在“评论”表单中生成TicketUpdates(使用fields_foraccepts_nested_attributes_for)。

基本上用户可以在下拉列表中选择(即select标签)他们想要更改的字段,更改下拉列表的值会触发事件以显示适当的输入字段({{ 1}}用于文本和数字字段,input用于关联)与旧值预先填充

我可以拦截执行更新的“select”控制器中的TicketUpdates

这种方法看起来对用户来说很好看,但我看不出如何以干净或干燥的方式实现。 因为票证有很多字段,并且它们是混合的小数和关联,所以我必须在视图和控制器中为每个字段实现特定的逻辑。

我不确定是否有更好的方法,或者实际上有任何宝石或技巧可以轻松完成。

有人有什么可以推荐我的吗?

我正在使用rails 3.2.8。

0 个答案:

没有答案