2016-02-05 78 views
0

我正在使用paper_trail gem作爲rails項目。 (紅寶石2.3,導軌4.2.5)paper_trail gem - 無法跟蹤銷燬事件

paper_trail不跟蹤:destroy我的rails應用程序中的事件。

經過調查發現,destroy事件的版本模型似乎沒有被保存,因爲它與它應該跟蹤的模型有關係,而現在不存在(我們正在記錄一個銷燬事件,因此它是故意在此刻模型不存在)。

以下是我試圖讓這背後:

PaperTrail有一個名爲Version模型。當我設置一個斷點at the point其中Version實例與destroy事件應保存我可以看到該模型不驗證。

ActiveRecord::RecordInvalid: Validation failed: Item can't be blank

當我看到屬於該版本的機型是什麼驗證器,我可以看到:item是這是對驗證一個屬性:當我試圖挽救版車型在這一點上我得到這個消息

[<ActiveRecord::Validations::PresenceValidator:0x007fe90cb3be40 @attributes=[:event], @options={}>, 
<ActiveRecord::Validations::PresenceValidator:0x007fe9044c82a0 @attributes=[:event], @options={}>, 
<ActiveRecord::Validations::PresenceValidator:0x007fe9044cbce8 @attributes=[:item_type], @options={}>, 
<ActiveRecord::Validations::PresenceValidator:0x007fe90e022f20 @attributes=[:item], @options={}>] 

有什麼我在這裏失蹤?我的積極記錄模型非常簡單:

class ClientNote < ActiveRecord::Base 
    has_paper_trail 
end 

回答

0

對。你必須明白,我對鐵軌的魔力還是相當陌生的。

顯然有is a gem根據架構自動添加驗證器到導軌模型。那是什麼阻止了paper_trail創業板爲我工作。