【问题标题】:How to run FastAPI from terminal?如何从终端运行 FastAPI?
【发布时间】:2020-10-07 15:42:06
【问题描述】:

我想在 shell 中执行 fastapi。
例如,我们可以在 django 中使用以下代码:
python manage.py shell
我如何在 fastapi 中做到这一点?

【问题讨论】:

    标签: python shell fastapi


    【解决方案1】:

    简单的回答,你不能。

    manage.py 与 django-admin 做同样的事情,但也设置了 DJANGO_SETTINGS_MODULE 环境变量,使其指向你项目的 settings.py 文件。在 FastAPI 中,我们没有管理实用程序,因为没有开箱即用的配置、环境管理等。这是微框架和高级框架之间的主要区别。

    FastAPI 没有任何开箱即用的管理实用程序。

    【讨论】:

    • manage.py shell 不会在 Django 中运行 “开发服务器”
    • 你读过这个问题吗? manage.py shell 启动交互式解释器,我们没有 Django 的任何功能,所以我无法运行它们中的任何一个,这正是您期望从我的示例中看到的?
    • 是的,我读到了。语句 "...execute fastapi in shell" 是有道理的,但是示例(示例 like python manage.py shell in Django)没有适合这种情况,因为在运行命令 python manage.py shell 时,Django 不会启动服务器,而只会启动一个不在您的示例中的交互式 shell。 @Yagizcan Degirmenci
    • 我会说,除非没有提及 python manage.py shell 命令,否则您的答案非常适合 OP。 OP对运行服务器交互式会话不太清楚
    • @ArakkalAbu 虽然我同意 OP 的措辞有些模棱两可,但 IMO 很明显可以归结为“什么相当于 fastapi 中的 manage.py shell”,没有任何关于开发服务器的上下文。跨度>
    【解决方案2】:

    在终端中转到 main.py 所在的目录并键入

    uvicorn main:app --host 0.0.0.0 --port 8888
    

    【讨论】:

    • 此命令在 FastAPI 中启动服务器.. 不是交互式会话..
    猜你喜欢
    • 2013-11-07
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-14
    • 2012-09-04
    • 2016-06-03
    • 2020-11-27
    相关资源
    最近更新 更多