[FastAPI-02]模板渲染

1. 插件库

pip install -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com jinja2 aiofiles

2. 模板渲染程序

2.1 Python程序

# _*_ coding: UTF-8 _*_
from fastapi import FastAPI
from starlette.requests import Request
from starlette.templating import Jinja2Templates

app = FastAPI()
templates = Jinja2Templates(directory="../templates")

@app.get("/")
async def main(request: Request):
    return templates.TemplateResponse('index.html',{'request':request,'hello':'Hi...'})

@app.get("/{item_id}/")
async def item_id(request: Request,item_id):
    return templates.TemplateResponse('index.html',{'request':request,"item_id":item_id})

if __name__ == '__main__':
    import uvicorn
    uvicorn.run(app,host='127.0.0.1',port=8000)

2.2 index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>Hello FastAPI...</h1>
    <h1>{{ hello }}</h1>
    <h2>{{ item_id }}</h2>
</body>
</html>
posted @ 2022-11-11 20:23  LeoShi2020  阅读(149)  评论(0)    收藏  举报