当前位置: 首页 > news >正文

使用 FastAPI 和 MongoDB 实现分页查询功能,并在 React 中进行分页展示

第一部分:FastAPI 和 MongoDB 后端

  1. 安装必要的库
    安装 FastAPI、Uvicorn、Motor(用于 MongoDB 的异步驱动)和 Pydantic(用于数据验证)。

    pip install fastapi uvicorn motor pydantic
    
  2. 创建 FastAPI 应用
    创建一个文件 main.py,并在其中定义分页查询接口。

    # main.py
    from fastapi import FastAPI, HTTPException, Query
    from motor.motor_asyncio import AsyncIOMotorClient
    from pydantic import BaseModel
    from bson import ObjectId
    from typing import Optional, Listapp = FastAPI()# MongoDB 连接
    client = AsyncIOMotorClient("mongodb://localhost:27017")
    db = client["blogdb"]
    collection = db["blogs"]# 定义博客模型
    class Blog(BaseModel):title: strcontent: strauthor: strcreated_at: str# 写入100条测试数据
    async def create_test_data():for i in range(100):blog = Blog(title=f"测试博客 {i+1}",content=f"这是第 {i+1} 篇博客的内容",author=f"作者 {i+1}",created_at="2025-05-10 12:33:33")await collection.insert_one(blog.dict())# 初始化时创建测试数据
    @app.on_event("startup")
    async def startup_event():await create_test_data()# 分页查询博客
    @app.get("/blogs/")
    async def get_blogs(page: int = Query(1, ge=1),page_size: int = Query(10, ge=1, le=100)
    ):skip = 

相关文章:

  • 《Hadoop 权威指南》笔记
  • LabVIEW车牌自动识别系统
  • 比亚迪全栈自研生态的底层逻辑
  • C语言_函数调用栈的汇编分析
  • 每日c/c++题 备战蓝桥杯(P1002 [NOIP 2002 普及组] 过河卒)
  • 【Mac 从 0 到 1 保姆级配置教程 12】- 安装配置万能的编辑器 VSCode 以及常用插件
  • 外网访问内网海康威视监控视频的方案:WebRTC + Coturn 搭建
  • 微服务架构中如何保证服务间通讯的安全
  • postgres--MVCC
  • MySQL基础面试题集锦
  • ssh -T git@github.com 测试失败解决方案:修改hosts文件
  • 六大设计模式--OCP(开闭原则):构建可扩展软件的基石
  • AUTOSAR图解==>AUTOSAR_TR_AIDesignPatternsCatalogue
  • 从0开始学linux韦东山教程第三章问题小结(3)
  • 微服务架构实战:从服务拆分到RestTemplate远程调用
  • 模型过拟合是什么?
  • springboot3整合SpringSecurity实现登录校验与权限认证
  • 理解反向Shell:隐藏在合法流量中的威胁
  • React 从零到一执行原理 (2025 最新版)
  • 数据仓库Hive
  • 李强会见巴西总统卢拉
  • 商务部召开外贸企业圆桌会:全力为外贸企业纾困解难,提供更多支持
  • 女高音吴睿睿“古词新唱”,穿着汉服唱唐诗宋词
  • 教育部基础教育教指委:小学阶段禁止学生独自使用开放式内容生成功能
  • 多元史料下的“西狩”叙事——《“庚子西狩”中外资料六种》解题
  • IPO周报|本周A股暂无新股网上申购,年内最低价股周二上市