如何一起使用小星和pydantic

发布于 2025-01-31 22:34:47 字数 284 浏览 4 评论 0原文

我正在尝试使用pydantic在我的《星际应用》应用程序中获取用户价值。我该怎么办?

class Post(BaseModel):
title:str
content:str

@app.route("/createposts",methods=["POST"])
async def create_posts(request):
    data = await request.json()
    print(data)
    return JSONResponse({"data":data})

I am trying to use Pydantic to get user value in my Starlette application. How do i do so ?

class Post(BaseModel):
title:str
content:str

@app.route("/createposts",methods=["POST"])
async def create_posts(request):
    data = await request.json()
    print(data)
    return JSONResponse({"data":data})

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

鹿童谣 2025-02-07 22:34:48
 from starlette.applications import Starlette
 from starlette.responses import JSONResponse

 from pydantic import BaseModel
 from pydantic import ValidationError
 from typing import Optional
 app = Starlette()

class Post(BaseModel):
    title:str
    content:str
    rating:Optional[int]=None
 
@app.route("/createposts",methods=["POST"])
async def create_posts(request):
    data = await request.json()
        try:
            parsed_post = Post(**data)
        except ValidationError as e:
            return JSONResponse({"error":e.json()})

    return JSONResponse({"post_data":"Post Create Successfully"})

谢谢@monkut

 from starlette.applications import Starlette
 from starlette.responses import JSONResponse

 from pydantic import BaseModel
 from pydantic import ValidationError
 from typing import Optional
 app = Starlette()

class Post(BaseModel):
    title:str
    content:str
    rating:Optional[int]=None
 
@app.route("/createposts",methods=["POST"])
async def create_posts(request):
    data = await request.json()
        try:
            parsed_post = Post(**data)
        except ValidationError as e:
            return JSONResponse({"error":e.json()})

    return JSONResponse({"post_data":"Post Create Successfully"})

Thank you @monkut

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文