Có vẻ như Paperclip không tôn trọng mô hình bẩn ActiveRecord. Làm cách nào để phát hiện thay đổi trong số gọi lại after_save
.Làm thế nào để phát hiện xem tập tin đính kèm kẹp giấy đã được thay đổi trong cuộc gọi lại after_save chưa?
class User
has_attachment :avatar
after_save :do_something
def do_something
if name_changed?
#
end
# How to determine avatar was changed?
#if avatar_changed?
# #
#end
end
end
Note
Tôi biết tôi có thể phát hiện sự thay đổi trong before_save
callback sử dụng avatar.dirty?
cuộc gọi, nhưng cờ dirty
được thiết lập để sai sau khi tiết kiệm.
Tôi có thể thêm bộ xử lý, nhưng tôi cần thực hiện các tác vụ của mình sau khi lưu dữ liệu mô hình.
Đây là những gì tôi đang làm ngay bây giờ. Tôi tự hỏi nếu có một phương pháp tốt hơn. –
Bạn đã từng đưa ra giải pháp tốt hơn chưa? –