1

User设置要版本化的模型是否有任何冲突paper_trail?我有一个模型“用户”,如下所示:

class User < ActiveRecord::Base
  has_paper_trail

end

问题是,每当我打电话时,user#versions我都会遇到异常:

ActiveRecord::StatementInvalid: Mysql2::Error: Unknown column 'versions.user_id' in 'where clause': SELECT `versions`.* FROM `versions` WHERE (`versions`.user_id = 6)

versions(在Userwith上调用时抛出异常id = 6

当我尝试保存User. 我得到以下异常:

ActiveRecord::StatementInvalid: Mysql2::Error: Column 'item_id' cannot be null: INSERT INTO `versions` (`event`, `created_at`, `item_id`, `item_type`, `object`, `whodunnit`) VALUES ('update', '2011-11-17 10:38:43', NULL, NULL, '--- ....

这似乎save没有填充item_idand item_type

任何帮助将非常感激。

提前致谢

4

1 回答 1

1

问题是我也在has_many :versions我的User模型中添加了并且存在冲突。

为了避免冲突,我遵循了paper_trail文档中提到的内容:

has_paper_trail :versions => :paper_trail_versions

于 2011-11-19T17:09:15.243 回答