ظهرت لي هذه الرسالة عند تنفيذ ما يلي.
تم كل شيء في إضافة (plugin).
كنت أضيف مُحقّق (Validator) إلى فئة Post… ومحتواه لا يهم، لكنني سأضعه لأغراض الرد.
frozen_string_literal: true
class MainPostValidator < ActiveModel::Validator
def validate(record)
puts ‘TTTTT’
p recordraw = record.raw unless raw.present? post.errors.add :base, 'This record is invalid' endend
private
def some_complex_logic
# …
end
end
قبل تشغيل الخادم مع التغييرات الجديدة، كنت قد فتحت الموقع على صفحة تعديل منشور، جاهزًا للتحقق مما إذا كان حفظ التغييرات يُفعّل المُحقّق الخاص بي.
أعدت تشغيل الخادم لكنني لم أُحدّث الصفحة! وعندما ضغطت على حفظ التغييرات في المنشور، ظهرت لي تلك الرسالة. اختفت بمجرد تحديث الصفحة، وربما بعد إعادة تشغيل مثيل الخادم أيضًا.
تم كل ذلك في بيئة التطوير المحلية.
آمل أن يكون هذا مفيدًا ![]()
تم إعلان المُحقّق في ملف جديد، وكان كود Post الإضافي لتطبيق المُحقّق موجودًا في ملف جديد أيضًا.
require_dependency 'post' Post.class_eval { include ActiveModel::Validations validates_with MainPostValidator }