Class: Panda::Core::UserActivity
- Inherits:
-
ApplicationRecord
- Object
- ActiveRecord::Base
- ApplicationRecord
- Panda::Core::UserActivity
- Includes:
- HasUUID
- Defined in:
- app/models/panda/core/user_activity.rb
Class Method Summary collapse
-
.log!(user:, action:, resource: nil, metadata: {}, request: nil) ⇒ Object
Log a user activity with optional request context.
Class Method Details
.log!(user:, action:, resource: nil, metadata: {}, request: nil) ⇒ Object
Log a user activity with optional request context
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'app/models/panda/core/user_activity.rb', line 21 def self.log!(user:, action:, resource: nil, metadata: {}, request: nil) attrs = { user: user, action: action.to_s, metadata: } if resource attrs[:resource_type] = resource.class.name attrs[:resource_id] = resource.id end if request attrs[:ip_address] = request.remote_ip attrs[:user_agent] = request.user_agent end create!(attrs) end |