كيف يمكنني ترميز مهمة أشعل النار التي تدير Rails DB: Migrate Task؟
-
03-07-2019 - |
سؤال
أرغب في تشغيل DB: Migrate الإصدار = 0 ثم DB: ترحيل داخل مهمة RAKE الخاصة بي. أنا مرتبك حول كيفية القيام بذلك. هل أحتاج إلى بيان خاص متطلبات؟ ستقيم مهمتي في دليل LIB/CASKS لتطبيق Rails. شكرًا.
المحلول
هل مهمتك تعتمد فقط على الحصول على ديسيبل نظيف؟ إذا كان هذا هو الحال ، فيمكنك القيام بذلك:
المهمة: my_task => [: البيئة ، 'DB: إعادة تعيين'
نصائح أخرى
تحرير: Rake :: Task [] لن يقبل المعلمات ، عليك تعيينها في ENV. بالإضافة إلى ذلك ، يجب عليك إعادة تمكين المهمة لتشغيلها عدة مرات.
ENV['VERSION']= '0'
Rake::Task['db:migrate'].invoke
Rake::Task['db:migrate'].reenable
ENV.delete 'VERSION'
Rake::Task["db:migrate"].invoke
ملاحظة: Rake :: Task.Reenable يتطلب Rake 0.8.2 أو أعلى.
الدفع rake db:reset
لأن ذلك سيحقق ما تحاول القيام به.
لمعرفة ما تفعله كل مهام أشعلك ، قم بالتشغيل rake -T
لا تنتمي إلى StackOverflow