Was tun, wenn Swagger-Codegen mit Python und Importfehler ausgeführt wird? Es wird kein Modul mit dem Namen angezeigt

Hintergrund

swagger-codegen, wenn Sie eine API in einem bestimmten Format definieren, Es spuckt eine Bibliothek aus, um sie in verschiedenen Sprachen zu treffen.

Es passt gut zu Rails 'Grape, und wenn ich versuche, einen API-Server zu treffen, der mit Rails aus Python erstellt wurde, ist dies das Hauptthema.

Problem

Wie Sie sehen können, indem Sie den Code von swagger-codegen lesen, Beim Erstellen einer Datei sollte der Dateiname "api_v1_name" sein, er wird jedoch als "api :: v1 :: name" generiert, und der Dateiname und der Pfad werden vom Importnetz gut angegeben. Ist nicht ... Daher erhalte ich einen Importfehler. Es ist ein kleiner Fehler, daher denke ich, dass er bald behoben sein wird, aber ich möchte sofort kommunizieren können.

Ansatz

Überschreiben wir also die Funktion und lösen sie. In Bezug auf das Überschreiben war "So einfach! Swagger Codegen anpassen" sehr hilfreich.

custom-script.groovy


@Grab('io.swagger:swagger-codegen-cli:2.1.4')
import io.swagger.codegen.*;
import io.swagger.codegen.languages.*;

class MyPythonClientGen extends PythonClientCodegen {

  @Override
  public String toModelFilename(String name){
    return toVarName(name)
  }

  //Kick to CLI
  public static main(String[] args) {
    SwaggerCodegen.main(args)
  }

}
groovy custom-script.groovy generate -i http://example.com/api/v1/swagger_doc -l MyPythonClientGen -o ./api/ 

mit diesem, Dateien werden jetzt mit "api_v1_name" anstelle des Namens "api :: v1 :: name" generiert. Wenn Sie es als störend empfinden, können Sie die Datei manuell umbenennen.

Recommended Posts

Was tun, wenn Swagger-Codegen mit Python und Importfehler ausgeführt wird? Es wird kein Modul mit dem Namen angezeigt
Kein Modul mit dem Namen Was tun, wenn Sie "libs.resources" erhalten?
Was tun, wenn auf pipenv der Fehler "Keine Versionen gefunden" angezeigt wird?
Was tun, wenn in Hydrogen "Kein Kernel für Sprachpython gefunden" angezeigt wird?
Was tun, wenn Sie Python auf IntelliJ ausführen und mit einem Fehler beenden?
Was tun, wenn in Python minus Null angezeigt wird?
ModuleNotFoundError: Kein Modul Was tun, wenn Sie'tensorflow.contrib 'erhalten?
Was tun, wenn bei der Installation von Python mit pyenv eine Fehlermeldung angezeigt wird?
Was tun, wenn "Python nicht konfiguriert" angezeigt wird? Verwenden von PyDev in Eclipse
Was tun, wenn Sie sich über "Wertefehler: unbekannt lokal: UTF-8" in python manage.py syncdb ärgern?
Was tun, wenn der Fehler angezeigt wird? Das Ziel-WSGI-Skript '/ var / www / xxx / xxx.wsgi' kann nicht als Python-Modul geladen werden
Was tun, wenn Overalls "Abdeckung unbekannt" werden?
Was tun, wenn bei der Installation von Python 2 mit pyenv ein OpenSSL-Fehler auftritt?
Was tun, wenn in pycurl (einer von ihnen) "(35, 'SSL-Verbindungsfehler')" angezeigt wird?
Was tun, wenn beim Importieren von matplotlib mit Jupyter ein Importfehler auftritt?
Importfehler: Kein Modul mit dem Namen 'xxxxx' in Python3
Was tun, wenn ModuleNotFoundError: In Python tritt kein Modul mit dem Namen 'XXX' auf
Was tun, wenn bei yum ein Metalink für Repository-Fehler nicht abgerufen werden kann?
Was tun, wenn beim Ausführen von "certbot erneuern" in der CakePHP-Umgebung eine Fehlermeldung angezeigt wird?
Was tun, wenn bei der Installation von openCV 3 der Fehler "Fehler: opencv3: Unterstützt nicht das Erstellen von Python 2- und 3-Wrappern" angezeigt wird
Was tun, um eine Google-Tabelle in Python zu erhalten?
Was tun, wenn Sie die Rastersuche von sklearn in Python nicht verwenden können?
Was tun, wenn Sie sich mit FileNotFoundError in der Dateireferenz verlieren?
Was tun, wenn Sie sich über TensorFlow v2 ohne Attribut 'app' ärgern?
Was tun, wenn in pydoc keine Python-Dokumentation für ... gefunden wird?
Was tun, wenn beim Laden von mnist eine Fehlermeldung angezeigt wird?
Was passiert, wenn Sie in Python "A, B als C importieren"?
Was tun, wenn die Fehlermeldung angezeigt wird, dass der c-Compiler in configure keine ausführbaren Dateien erstellen kann?
Was tun, wenn beim Versuch, model.save mit Keras zu modellieren, der Fehler "get_config" überschrieben werden muss?
Was tun, wenn "Kein Modul mit dem Namen" cv2 "" angezeigt wird, wenn "cv2 importieren" angezeigt wird, obwohl openCV3 installiert ist und ein symbolischer Link erstellt wird.
Was tun, wenn ein Fehler wie "Qstring" angezeigt wird? Wurde bereits mit mne python auf Version 1 gesetzt
[Python] Dinge, die überprüft werden müssen, wenn in Django ein Unicode-Dekodierungsfehler auftritt
Was tun, wenn beim Importieren von Lebensläufen ein symbolischer Linkfehler auftritt, während versucht wird, OpenCV in Python zu installieren?
Was tun, wenn beim Versuch, eine Nachricht in task.loop () unmittelbar nach dem Start zu senden, eine Fehlermeldung angezeigt wird?
Was tun, wenn ein Fehler "unbekannter Dienst" vom gRPC-Server zurückgegeben wird?
Was tun, wenn beim Konvertieren von PySparkDataFrame in PandasDataFrame ein Speicherfehler auftritt?
Was tun, wenn der Druckbefehl selbst einen Fehler in Mayas Python verursacht?
Was tun, wenn Sortierimporte in der Python-Erweiterung von VSCode hängen bleiben (um 2020/09)?
So installieren und verwenden Sie pyenv. Was tun, wenn Sie die Python-Version nicht wechseln können?
Was tun, wenn bei Verwendung von ts-node-dev unter Linux der Fehler "ERR_FEATURE_UNAVAILABLE_ON_PLATFORM" angezeigt wird?
Was tun, wenn in tf.train.start_queue_runners () ein 0xC0000005-Fehler auftritt?
Was tun, wenn Sie sich nicht als root anmelden können?
ImportError: Kein Modul Was tun, wenn Sie dazu aufgefordert werden?
Was tun, wenn bei Do and Return in einem Golang-Test ein Fehler mit zu vielen Eingabeargumenten auftritt?
Was tun, wenn ein undefinierter Fehler angezeigt wird: Das Objekt 'Module_six_moves_urllib_parse' hat unter MacOS kein Attribut 'urlencode'
Wenn Sie Beautiful Soup 4 nach dem Update auf Python 3.5 nicht verwenden können. ImportError: Kein Modul mit dem Namen bs4
Was tun, wenn beim Versuch, pip mit pyenv zu verwenden, ein undefinierter Fehler angezeigt wird?
Ich erhalte "Sanity Check" - und "No Module" -Fehler in der Importnummer
Was tun, wenn Sie pyaudio nicht mit pip #Python installieren können?
Was tun, wenn bei der Pip-Installation ein Unicode-Dekodierungsfehler auftritt?
Was tun, wenn Sie den Papierkorb in Lubuntu 18.04 nicht verwenden können?
Der heutige Python-Fehler: ModuleNotFoundError: Kein Modul benannt
Der heutige Python-Fehler: ModuleNotFoundError: Kein Modul benannt
ModuleNotFoundError in Python: Kein Modul mit dem Namen story
Modulimport und Ausnahmebehandlung in Python