التراجع عن ترحيل المكون الإضافي

أعمل على إضافة مكون (محاولة أولية مني للقيام بذلك).

يتطلب المكون توسيع قاعدة البيانات باستخدام هجرة جديدة. تمكنت من تشغيل هذه الهجرة الأولية باستخدام الأمر bin/rake db:migrate.

لاحظت بعض المشاكل في الهجرة بعد ذلك، وحاولت التراجع عن قاعدة البيانات، ثم تحرير الهجرة وإعادة تشغيلها.

ومع ذلك، عند تشغيل الأمر bin/rake db:rollback، أواجه الخطأ التالي:

rake aborted!
ActiveRecord::UnknownMigrationVersionError: 

لا توجد هجرة برقم الإصدار 20210820205029.

رقم الإصدار في رسالة الخطأ يتطابق مع هجرة المكون التي أعمل عليها.

هل لديك أي أفكار؟

نعم، لا يمكنك حاليًا التراجع عن عمليات الترحيل في مجلدات الإضافات. الطريقة التي أقوم بها بذلك هي نقل عملية الترحيل إلى مستودع النواة
mv plugins/discourse-example/db/migrate/20210823160357_migration.rb db/migrate/20210823160357_migration.rb

التراجع، ثم إعادتها إلى الإضافة
mv db/migrate/20210823160357_migration.rb plugins/discourse-example/db/migrate/20210823160357_migration.rb

إذا لم تكن عملية الترحيل الخاصة بك هي آخر عملية ترحيل في مجلد db للنواة، فيمكنك استخدام bin/rails db:migrate:down VERSION=20210823160357 لاستهداف عملية الترحيل التي نقلتها للتو.

حيلة حياة رائعة، شكرًا لك!