ruby on rails - ActiveModel विधि विशेषता "_was" के लिए किस प्रकार उपयोग किया जाता है?



ruby-on-rails activerecord (1)

यह ActiveModel का एक हिस्सा है :: डर्टी आप इसे यहां देख सकते हैं https://github.com/rails/rails/blob/af64ac4e5ce8406137d5520fa88e8f652ab703e9/activemodel/lib/active_model/dirty.rb#L146 उदाहरण

person = Person.find_by_name('Uncle Bob')
person.changed?       # => false

नाम बदलें:

person.name = 'Bob'
person.changed?       # => true
person.name_changed?  # => true

#method _was return prev attribute value
person.name_was  # => 'Uncle Bob'  
person.name_change    # => ['Uncle Bob', 'Bob']
person.name = 'Bill'
person.name_change    # => ['Uncle Bob', 'Bill']

कंसोल में स्वत: पूर्ण का उपयोग करते समय, मैं अक्सर अपने गुणों के अनुसार " _was " को देखता हूं I लेकिन मुझे उपयोग के लिए कोई दस्तावेज़ीकरण या श्रेष्ठ अभ्यास नहीं मिल सकता है। यह क्या करता है और इसे कैसे इस्तेमाल किया जाना चाहिए?

उदाहरण: user.fname में विधि user.fname_was

Source_location का उपयोग करते हुए, मैंने इसे नीचे ट्रैक किया है: active_model / att_methods.rb ", पंक्ति 296 लेकिन विशिष्ट कुछ भी नहीं है





activemodel