- 我的表中有很多字段,我不想修改所有列的版本。如何跳过不需要存储任何更改的列
我使用了以下内容,但它将值存储在"版本"表中。在我的型号中
class User < ActiveRecord::Base
has_paper_trail skip: [:foo1, :foo2, :foo3]
# tried with ignore instead of skip
end
- 如何防止在"版本"表中写入对象字段
- 。。。我不想修改所有列的版本。如何跳过不需要存储任何更改的列
skip
正确。在文档中,请参阅第2.c.节选择要监控的属性:
使用:skip选项可以完全跳过字段。与:ignore一样,对这些字段的更新不会创建新的PaperTrail::Version。此外,每当创建新的PaperTrail::version时,这些字段都不会包含在对象的序列化版本中。
例如:
class Article < ActiveRecord::Base has_paper_trail :skip => [:file_upload] end
如果skip
没有按照记录的方式工作,请提交错误报告。
回复:您的第二个问题:
- 如何防止在"版本"表中写入对象字段
在versions
中插入记录时,PaperTrail总是在object
列中写入一些内容。您可以配置写入的内容,例如使用skip
,但它将始终写入内容。