2017-03-24 9 views
0

Für eine Aufgabe, die ich mache, muss ich eine Option "--format oneline" haben, wo meine Ausgabe in einer Zeile formatiert ist.Ruby Thor Optionen mit Leerraum

Ich habe dies erfolgreich gemacht, aber nur wenn ich --formatoneline (ohne Leerzeichen) verwende. Wenn ich den Leerraum einschließe trennt es die Option in 2 Argumente ["format", "oneline"].

Ich würde gerne wissen, wie man mit dem Leerzeichen hier umgehen, da die Zuordnung sehr spezifische Formatierung erfordert.

Dies wird mit Ruby und dem Thor-Modul codiert.

Danke!

Jack

Antwort

1

Sie können :type für eine Option festlegen. Werfen Sie einen Blick here.

method_option :format, type: :string 

Und dann können Sie überprüfen, ob es --format oneline

if options[:format] == 'oneline' 
    # puts smth 
end 
+0

Vielen Dank dieses –

+0

Jede Chance, arbeitete ihr mir helfen könntet zu verstehen, wie ich das gleiche Verfahren würde tun, sondern mit „no- Ländercode "? Es scheint, dass die Bindestriche nicht geschätzt werden. –

+0

Sie können es so tun: 'method_option: 'country-code''. Mit 'nein' könnte man es so nennen:' --no-country-code'. Hoffe, dass es das ist, wonach Sie suchen. – DiodonHystrix