V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
nonduality
V2EX  ›  Python

类似 FastAPI、基于 Django 的 REST API 框架

  •  
  •   nonduality · 2020-12-22 16:09:56 +08:00 · 3780 次点击
    这是一个创建于 1434 天前的主题,其中的信息可能已经有所发展或是发生改变。
    早先看到 FastAPI,觉得这玩意还是不错的,使用方便、运行高效。可惜我更喜欢 Django 生态下的东西,所以想过要是能结合 FastAPI 和 Django 的优点,搞个比 DRF 更好的 REST 框架,应该会很好。

    刚这会就看到了别人写的 Django-Ninja,完全符合我的设想,跑起来也很高效,初步玩了下,确实不错,大家也可以看看:vitalik/django-ninja

    声明:不是我写的,无利益相关。
    9 条回复    2020-12-30 22:02:08 +08:00
    youngce
        1
    youngce  
       2020-12-22 16:16:54 +08:00
    django 3.0 版本已经在支持协程了,坐等 django ORM 支持协程吧,不过说回来即使上了协程估计也会有漫长的道路要走。FastAPI 抢占的只是 flask 市场,小项目都可以。目前 python 界也没有好用的协程 orm (已有的都还不够理想),说到底 python 协程的生态大概还需要一段时间
    stdout
        2
    stdout  
       2020-12-22 17:11:43 +08:00
    connexion 基于 openapi,个人认为开发最快了(熟悉 openapi 的前提)
    so1n
        3
    so1n  
       2020-12-22 17:27:55 +08:00
    +1 最近也在弄类似于 fastapi 的使用 然后可以套在其他框架 但是没时间又复杂 已经暂停了- -
    janxin
        4
    janxin  
       2020-12-22 17:45:31 +08:00
    我感觉这一类的问题是原有的 drf 之类的也挺好用的
    est
        5
    est  
       2020-12-22 17:50:10 +08:00
    @youngce orm 支持不够啊。得 dbapi2 的一系列驱动支持才行。
    nonduality
        6
    nonduality  
    OP
       2020-12-22 20:48:21 +08:00
    @janxin 我看过 DRF 的代码,感觉实现得很重,运行效率有点低。Django-Ninja 文档里有个测试显示 DRF 慢它一倍。
    wellsc
        7
    wellsc  
       2020-12-23 01:41:17 +08:00
    vert.x
    chaogg
        8
    chaogg  
       2020-12-23 13:51:39 +08:00
    @youngce 因为异步数据库访问意义不大
    dahuahua
        9
    dahuahua  
       2020-12-30 22:02:08 +08:00
    pecan
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5392 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 05:51 · PVG 13:51 · LAX 21:51 · JFK 00:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.