Có cách nào để hoàn tác/hoàn nguyên bất kỳ thay đổi cục bộ nào đối với đối tượng Activerecord hay không. Ví dụ:Làm cách nào để hoàn nguyên/hoàn tác các thay đổi cục bộ đối với đối tượng Activerecord?
user = User.first
user.name # "Fred"
user.name = "Sam"
user.name_was # "Fred"
user.revert
user.name # "Fred"
Tôi biết tôi có thể làm user.reload
nhưng tôi không cần phải nhấn cơ sở dữ liệu để làm điều này kể từ khi các giá trị cũ được lưu trữ trong tình trạng của đối tượng.
Tốt hơn là giải pháp Rails 3.
lý do tại sao bạn cần điều này? – CodeGroover
Tôi đoán bạn có thể gán 'nil' cho người dùng, ví dụ: 'user = nil' tương đương với revert (nhưng không nhất thiết là giá trị cũ) – Bala
Tôi không nhận ra rằng các giá trị cũ đã được giữ lại trong đối tượng. Bạn có thể chỉ cho tôi bất kỳ tài liệu nào về cách truy cập chúng không? –