gpt4 book ai didi

fastapi - 如何从 Poetry 运行 FastAPI 应用程序?

转载 作者:行者123 更新时间:2023-12-03 15:34:41 25 4
gpt4 key购买 nike

我有一个由诗歌构建的 fastapi 项目。我想使用 pyproject.tom 中的脚本部分运行应用程序,如下所示:

poetry run start
该部分的双引号内是什么?
[tool.poetry.scripts]
start = ""
我尝试运行以下脚本。
import uvicorn
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def root():
return {"message": "Hello World"}

def main():
print("Hello World")
uvicorn.run(app, host="0.0.0.0", port=8000, reload=True, workers=2)

if __name__ == "__main__":
main()
它停止应用程序并只显示这样的警告。

WARNING: You must pass the application as an import string to enable 'reload' or 'workers'.

最佳答案

我找到了解决这个问题的方法。见下文:
pyproject.toml

[tool.poetry.scripts]
start = "my_package.main:start"
在您的 main.py里面 my_package文件夹。
import uvicorn
from fastapi import FastAPI

app = FastAPI()


@app.get("/")
async def root():
return {"message": "Hello World"}

def start():
"""Launched with `poetry run start` at root level"""
uvicorn.run("my_package.main:app", host="0.0.0.0", port=8000, reload=True)

关于fastapi - 如何从 Poetry 运行 FastAPI 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63809553/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com