У меня проблема с генерацией кода из Swagger-Codegen.
Я создал следующие определения объектов с помощью Swagger:
...
definitions:
Object1:
type: "object"
properties:
id:
type: "integer"
format: "int64"
obj2:
$ref: "#/definitions/Object2"
Object2:
type: "object"
properties:
id:
type: "integer"
format: "int64"
name:
type: "string"
...
Затем я экспортировал файл YAML и сгенерировал заглушку. сервер для python - flask.
Когда я пытаюсь запустить сервер flask, я получаю сообщение об ошибке:
NameError: name 'Object2' is not defined
Файл __init__.py
был автоматически создан и содержит импорт для классов обеих моделей:
from swagger.models.object1 import Object1
from swagger.models.object2 import Object2
Если я добавлю импорт в класс Object2
, я получу эту ошибку вместо:
object1.py
from swagger.models import Object2
ImportError: cannot import name 'Object2' from partially initialized module 'swagger.models' (most likely due to a circular import)
Ошибка устраняется только в том случае, если я добавлю этот импорт в object1.py :
from swagger.models.object2 import Object2
Поскольку код генерируется и любые изменения будут можно ли импортировать класс Object2
?
Я пытался отредактировать шаблон model.mustache , но не смог найти способ разрешить импорт Мне нужны модели.
Спасибо всем, кто может мне помочь.