Ich habe diese Haupt-Rake AufgabeAusfahrt aus einem von einer Reihe von Rake Aufgaben und weiter mit den nächsten
namespace :crawler do
task main: :environment do
Rake::Task['tester:first'].execute
Rake::Task['tester:second'].execute
Rake::Task['tester:third'].execute
end
end
Jede Aufgabe, ein Stück Code ausgeführt wird, die ein Wert prüft für anwesend sein, wenn dies nicht der Fall Beende dann die Aufgabe und fahre mit der nächsten fort. Eigentlich ist der Code der folgenden, aber es funktioniert nicht
def check(value)
if !value.nil?
return value
else
exit
end
end
Als ich den Ausgang Teil erreichen, das ganze Programm beendet, und die anderen Aufgaben werden nicht ausgeführt.
Exit beendet das gesamte Skript, nicht nur den Task. Kannst du es nicht einfach rausnehmen? – tpbowden
Sie schrieb "prüft auf einen Wert zu sein, wenn es nicht ist, dann beenden Sie die Aufgabe", aber in Ihrer "check" -Methode führen Sie "Exit", wenn der Wert vorhanden ist (nicht Null) – emery
möglich duplicate von http://stackoverflow.com/questions/2316475/how-do-i-return-early-from-a-rake-task – emery