app/models/effective/log.rb in effective_logging-1.9.0 vs app/models/effective/log.rb in effective_logging-1.10.0
- old
+ new
@@ -11,25 +11,28 @@
belongs_to :parent, class_name: 'Effective::Log', counter_cache: true
has_many :logs, class_name: 'Effective::Log', foreign_key: :parent_id
# The user this log item is referring to
# An associated object, if we wanna add anything extra
- belongs_to :user
- belongs_to :associated, polymorphic: true
+ belongs_to :user, optional: true
+ belongs_to :associated, polymorphic: true, optional: true
serialize :details, Hash
- # structure do
- # logs_count :integer # Rails Counter Cache
- # message :string, :validates => [:presence]
- # details :text
- # status :string, :validates => [:presence, :inclusion => {:in => EffectiveLogging.statuses }]
- # timestamps
- # end
+ # Attributes
+ # logs_count :integer # Rails Counter Cache
+ # associated_type :string
+ # associated_id :integer
+ # associated_to_s :string
+ # message :string
+ # details :text
+ # status :string
+ # timestamps
+
validates :message, presence: true
- validates :status, presence: true, inclusion: { in: (EffectiveLogging.statuses + [EffectiveLogging.log_changes_status]) }
+ validates :status, presence: true, inclusion: { in: EffectiveLogging.statuses }
default_scope -> { order(updated_at: :desc) }
scope :logged_changes, -> { where(status: EffectiveLogging.log_changes_status)}
scope :changes, -> { where(status: EffectiveLogging.log_changes_status)}
@@ -37,10 +40,10 @@
def to_s
"Log #{id}"
end
def log(message, status = EffectiveLogging.statuses.first, options = {})
- EffectiveLogger.log(message, status, (options || {}).merge({:parent => self}))
+ EffectiveLogger.log(message, status, (options || {}).merge(parent: self))
end
def details
self[:details] || {}
end