Ich erhalte eine Fehlermeldung, wenn ich versuche, die Funktion innerhalb einer Rechenaufgabe zu verwenden. Gibt es eine Möglichkeit, es zum Laufen zu bringen?
Der Fehler lautet: "Keine solche Datei oder kein solches Verzeichnis - (Name der Rechenaufgabe)"
ruby-on-rails
ruby
rake
James A. Rosen
quelle
quelle
Antworten:
Das Problem ist, dass
Kernel#gets
(was Sie aufrufen, wenn Sie es nurgets
alleine verwenden) davon ausgegangen wird, dass Sie aus einer Datei ziehen, die durch die an Rake übergebenen Argumente benannt ist. Das heißt, es wirdgets
versucht, den Inhalt einer Datei namens [rake-task-here] zurückzugeben, die mit ziemlicher Sicherheit nicht vorhanden ist.Versuchen Sie es
STDIN.gets
.quelle
$stdin
ist hier wahrscheinlich vorzuziehenSTDIN
, siehe auch stackoverflow.com/a/4279689/968531Ich denke nicht, dass Sie Get in einer Rake-Task verwenden sollten. Wenn Sie Eingaben über die Befehlszeile benötigen, sollten Sie diese wahrscheinlich als Parameter übergeben, aber wenn Sie Code veröffentlichen, der nicht funktioniert, bin ich mir sicher Sie werden eine bessere Antwort bekommen.
quelle