django-rest-tsgTypeScript 代码生成器

联合创作 · 2023-09-28 02:38

django-rest-tsg 是一个用于 Django REST Framework 的 TypeScript 代码生成器。

支持从以下 Python 类型生成相应的 TypeScript 代码。

  • Django REST Framework 的序列化类:手工编写的序列化类(Serializer)、模型生成的序列化类(ModelSerializer)、数据类生成的序列化类(DataclassSerializer)
  • Python 的数据类:dataclasses.dataclass 修饰的类
  • Python 的枚举类:enum.Enum 的子类

并且支持上述类型的复合、嵌套类型的依赖处理。

安装

可直接从 PyPI 下载安装

$ pip install django_rest_tsg

使用

在 Django 项目的根目录中添加名为 tsgconfig.py 的配置文件。通过 BUILD_DIR 设置生成 TypeScript 代码文件的目录。在 BUILD_TASKS 列表中用 build 函数设置生成任务,参数分别为生成任务的源类型、生成目录和其他配置。

from django.conf import settings
from django_rest_tsg.build import build

BUILD_DIR = settings.BASE_DIR / 'app/src/core'

BUILD_TASKS = [
    build(Foo),
    build(BarSerializer, 'app/src/app/core', {'alias': 'Foobar'}),
]

django_rest_tsg 添加到 Django 配置文件中的 INSTALLED_APPS 列表中。

INSTALLED_APPS = [
    ...
    'django_rest_tsg'
]

运行 manage.py 上的 buildtypescript 命令即可向预定目录生成相应的 TypeScript 代码。

$ python manage.py buildtypescript
浏览 5
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报