我在從模型表格中刪除一列後試圖使PaperTrail版本通用化時遇到了問題。如何設置PaperTrail記錄器?
的堆棧跟蹤開始:private method 'warn' called for nil:NilClass
和指向我到reify
方法內的下列行:
# Set all the attributes in this version on the model.
attrs.each do |k, v|
if model.has_attribute?(k)
model[k.to_sym] = v
elsif model.respond_to?("#{k}=")
model.send("#{k}=", v)
else
logger.warn "Attribute #{k} does not exist on #{item_type} (Version id: #{id})."
end
end
因爲我已刪除從表中的列,我降落在else
塊的邏輯樹,這似乎是完全合理的......我很好地記錄了這個與物化繼續前進。
但是,我不明白爲什麼logger
是nil
首先。在哪裏以及如何設置PaperTrail記錄器,以便我們只記錄行爲而不是崩潰應用程序?