Skip to main content

openapi_model_generator

This library allows us to generate django models and drf serializers using an OpenAPI schema.

HowTo Use

pip install openapi_model_generator

python -m openapi_model_generator {open_api_path.json} {destination}
python -m openapi_model_generator {open_api_path.yaml} {destination}

As an example:

python -m openapi_model_generator schema.esb.json base_dir

or

python -m openapi_model_generator /home/user/schema.esb.json /home/user/base_dir

This command creates base models and serializers based on its models into the directory provided.

Then you can use them to define models and serializers in your Django+DRF application.

models.py:

from utils import define_models

from base_dir import base_models


define_models(['Model1', 'Model2', ...], base_models, locals())

serializers.py:

from utils import define_serializers

from base_dir import base_serializers
from . import models


define_serializers(['Model1', 'Model2', ...], base_serializers, locals(), models)

After that you can use them:

import pydoc
model_1 = pydoc.locate('{django_app}.models.Model1')
model_2 = pydoc.locate('{django_app}.models.Model2')
...
serializer_1 = pydoc.locate('{django_app}.serializers.Model1Serializer')
serializer_2 = pydoc.locate('{django_app}.serializers.Model2Serializer')

Release files for openapi-model-generator 0.1.15

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for openapi-model-generator 0.1.15
File Size Uploaded
openapi_model_generator-0.1.15.linux-x86_64.tar.gz 18.0 kB Details

Release files / openapi_model_generator-0.1.15.linux-x86_64.tar.gz

Download URL openapi_model_generator-0.1.15.linux-x86_64.tar.gz
Size 18.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c42bd8de4fc091b224037f67316b2189264af4b7f9f86d24d9df619eee2360dd
BLAKE2b-256 checksum
How to use checksums
ca6f96705fd4ee7fa77ae32f91a8af402f0ee460766e5082fdaa4a128baf2175
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.8.10

Release history Release notifications | RSS feed

This release

0.1.15 This release

1 release file

0.1.9

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page