এটি পরে যে কারও কাছে দেখার পরে, বর্তমানে এটি গুগলে শীর্ষে রয়েছে: এটি উল্লেখ করার মতো যে, এই আচরণটি রেল 5.2-এ পরিবর্তিত হবে এবং অ্যাক্টিভমডেল হিসাবে :: নষ্ট কিছুটা পরিবর্তন হয়েছে ।
আমি কি পরিবর্তন করব?
আপনি যদি কল attribute_changed?
- after_*
ব্যাকগুলিতে পদ্ধতি ব্যবহার করেন তবে আপনি একটি সতর্কতা দেখতে পাবেন:
প্রসারণ সতর্কতা: attribute_changed?
কলব্যাকের পরের অভ্যন্তরের আচরণটি রেলের পরবর্তী সংস্করণে পরিবর্তিত হবে। নতুন রিটার্ন মান save
প্রত্যাবর্তনের পরে পদ্ধতিটি কল করার আচরণকে প্রতিফলিত করবে (যেমন এখন এটি কী দেয় তার বিপরীতে)। বর্তমান আচরণ বজায় রাখতে saved_change_to_attribute?
পরিবর্তে ব্যবহার করুন। (/_প্যাটএইচএলএক্স / অ্যাপ্লিকেশন / মডেলস / ইউজার.আরবি 15 তে কিছু_ক্যালব্যাক থেকে কল করা)
যেমনটি উল্লেখ করা হয়েছে, আপনি সহজেই ফাংশনটি প্রতিস্থাপনের মাধ্যমে এটি ঠিক করতে পারেন saved_change_to_attribute?
। উদাহরণস্বরূপ, name_changed?
হয়ে যায়saved_change_to_name?
।
তেমনিভাবে, আপনি যদি পূর্বের attribute_change
মানগুলি পেতে ব্যবহার করেন তবে এটিও পরিবর্তিত হয় এবং নিম্নলিখিতটি ছুঁড়ে দেয়:
প্রসারণ সতর্কতা: attribute_change
কলব্যাকের পরের অভ্যন্তরের আচরণটি রেলের পরবর্তী সংস্করণে পরিবর্তিত হবে। নতুন রিটার্ন মান save
প্রত্যাবর্তনের পরে পদ্ধতিটি কল করার আচরণকে প্রতিফলিত করবে (যেমন এখন এটি কী দেয় তার বিপরীতে)। বর্তমান আচরণ বজায় রাখতে saved_change_to_attribute
পরিবর্তে ব্যবহার করুন। (/_প্যাটএইচএলএক্স / অ্যাপ্লিকেশন / মডেলস / ইউজার.আরবি:20 তে কিছু_ক্যালব্যাক থেকে কল করা হয়েছে)
আবার, যেমন এটি উল্লেখ করা হয়েছে, পদ্ধতিটি নাম পরিবর্তন করে saved_change_to_attribute
যার সাথে ফিরে আসে ["old", "new"]
। বা ব্যবহার করুন saved_changes
, যা সমস্ত পরিবর্তনগুলি ফিরিয়ে দেয় এবং এগুলি হিসাবে ব্যবহার করা যেতে পারে saved_changes['attribute']
।