ฉันต้องการสร้างฟังก์ชันเรียกกลับในรางที่ดำเนินการหลังจากบันทึกโมเดลแล้ว
ฉันมีโมเดลนี้การอ้างสิทธิ์ที่มีแอตทริบิวต์ 'สถานะ' ซึ่งจะเปลี่ยนแปลงไปตามสถานะของการอ้างสิทธิ์ค่าที่เป็นไปได้อยู่ระหว่างดำเนินการรับรองอนุมัติถูกปฏิเสธ
ฐานข้อมูลมี 'สถานะ' โดยมีค่าเริ่มต้นเป็น 'รอดำเนินการ'
ฉันต้องการทำงานบางอย่างหลังจากสร้างโมเดลในครั้งแรกหรืออัปเดตจากสถานะหนึ่งไปยังอีกสถานะหนึ่งขึ้นอยู่กับว่าจะเปลี่ยนจากสถานะใด
ความคิดของฉันคือการมีฟังก์ชันในโมเดล:
after_save :check_state
def check_state
# if status changed from nil to pending (created)
do this
# if status changed from pending to approved
performthistask
end
คำถามของฉันคือฉันจะตรวจสอบค่าก่อนหน้านี้ก่อนการเปลี่ยนแปลงภายในโมเดลได้อย่างไร