module
Lustra::Model::HasHooks::ClassMethods
Defined in:
lustra/model/modules/has_hooks.crInstance Method Summary
-
#after(event_name : Symbol, &block : Lustra::Model -> Nil)
Register a callback to be executed AFTER the specified lifecycle event
-
#before(event_name : Symbol, &block : Lustra::Model -> Nil)
Register a callback to be executed BEFORE the specified lifecycle event
Instance Method Detail
def after(event_name : Symbol, &block : Lustra::Model -> Nil)
#
Register a callback to be executed AFTER the specified lifecycle event
event_name
- the lifecycle event (:create
, :update
, :validate
, etc.)
block
- the callback block to execute
Note: The block parameter has type Lustra::Model
. Use .as(YourModel)
to access
model-specific methods and columns.
Example:
after(:create) do |model|
user = model.as(User)
user.send_welcome_email
end
def before(event_name : Symbol, &block : Lustra::Model -> Nil)
#
Register a callback to be executed BEFORE the specified lifecycle event
event_name
- the lifecycle event (:create
, :update
, :validate
, etc.)
block
- the callback block to execute
Note: The block parameter has type Lustra::Model
. Use .as(YourModel)
to access
model-specific methods and columns.
Example:
before(:validate) do |model|
user = model.as(User)
user.email = user.email.downcase
end