Active Record Callbacks
Penjelasan
Callback adalah method yang otomatis dijalankan pada titik tertentu di siklus hidup sebuah record — sebelum/sesudah `save`, `create`, `update`, atau `destroy`. Contohnya `before_save` untuk memformat data sebelum disimpan, atau `after_create` untuk mengirim notifikasi setelah record baru berhasil dibuat. Callback berguna untuk logic yang harus SELALU berjalan terkait siklus hidup record, tapi hati-hati jangan berlebihan memakainya karena bisa membuat alur kode sulit ditelusuri ("tersembunyi" di model, tidak terlihat jelas di controller).
Contoh Konsep
class Catatan < ApplicationRecord
before_save :normalisasi_judul
after_create :kirim_notifikasi
private
def normalisasi_judul
self.judul = judul.strip.capitalize
end
def kirim_notifikasi
Rails.logger.info "Catatan baru dibuat: #{judul}"
end
end
Praktikum
Tambahkan callback `before_save` yang memanggil method `normalisasi_judul`.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Gunakan callback untuk hal-hal yang selalu terkait langsung dengan record itu sendiri (misal normalisasi data). Untuk side-effect yang lebih kompleks seperti mengirim email, lebih baik dipisah ke background job supaya tidak memperlambat proses save.