0

我有一个belongs_to / has_one 关系,并且正在使用paper_trail gem 进行跟踪/版本控制。当我在 has_one 模型上更改属性时,版本是在 belongs_to 一侧创建的,而不是在我进行更改的一侧。

举个例子:Student has_one Locker Locker belongs_to Student

我可以从双方编辑这个关系,目前我只能对储物柜侧(最后使用储物柜的学生)进行版本控制。我还需要一个相反的历史——学生使用了什么储物柜。

当然,如果每次我点击 update 都会创建版本,这将是完全可以的,但是 paper_trail 很聪明,并且只有在 attrbute 实际更改时才会创建一个版本。由于储物柜关系不在学生模型中,因此未创建版本(尽管我创建了 dmy 自己的元信息属性来存储附加信息)。

那么,有什么方法可以做到这一点并且它并不难看:)(例如,我可以对其他一些属性进行一些小改动,比如放入一个空格或其他东西以便创建该版本 - 但那是矫枉过正并且是丑陋)

谢谢

4

0 回答 0