【Python实战】基于FastAPI的绿植养护管理系统 - 完整项目
🥂(❁´◡`❁)您的点赞👍➕评论📝➕收藏⭐➕关注👀是作者创作的最大动力🤞
💖📕🎉🔥 支持我:点赞👍+收藏⭐️+留言📝+关注👀欢迎留言讨论
🔥🔥🔥(源码获取 + 调试运行 + 问题答疑)🔥🔥🔥 有兴趣可以联系我
🔥🔥🔥 文末有往期免费源码,直接领取获取(无删减,无套路)
我们常常在当下感到时间慢,觉得未来遥远,但一旦回头看,时间已经悄然流逝。对于未来,尽管如此,也应该保持一种从容的态度,相信未来仍有许多可能性等待着我们。
绿植养护管理系统
一个基于 FastAPI 框架的绿植养护管理 Web 系统,包含完整的后端 API 和前端页面,帮助用户管理自己的植物、记录养护操作,并设置提醒。
功能特性
-
用户系统:注册、登录、JWT 认证
-
植物管理:添加、查看、更新、删除植物信息
-
养护记录:记录浇水、施肥、修剪、换盆等操作
-
养护提醒:设置周期提醒,自动计算下次提醒日期和逾期状态
-
前端页面:完整的单页应用(SPA),响应式设计,支持移动端
技术栈
-
语言:Python 3.10+
-
Web 框架:FastAPI
-
ORM:SQLAlchemy 2.0
-
数据库:SQLite(开发环境)/ PostgreSQL(生产环境)
-
认证:JWT(python-jose + passlib)
-
数据校验:Pydantic v2
安装与启动
1. 安装依赖
pip install -r requirements.txt
2. 启动服务
cd green_plant_manager
uvicorn app.main:app --reload
服务将在 http://127.0.0.1:8000 启动。
🔥🔥🔥(免费,无删减,无套路):java swing管理系统源码 程序 代码 图形界面(11套)」
链接:https://pan.quark.cn/s/784a0d377810
提取码:见文章末尾
🔥🔥🔥(免费,无删减,无套路): Python源代码+开发文档说明(23套)」
链接:https://pan.quark.cn/s/1d351abbd11c
提取码:见文章末尾
🔥🔥🔥(免费,无删减,无套路):计算机专业精选源码+论文(26套)」
链接:https://pan.quark.cn/s/8682a41d0097
提取码:见文章末尾
🔥🔥🔥(免费,无删减,无套路):Java web项目源码整合开发ssm(30套)
链接:https://pan.quark.cn/s/1c6e0826cbfd
提取码:见文章末尾
🔥🔥🔥(免费,无删减,无套路):「在线考试系统源码(含搭建教程)」
链接:https://pan.quark.cn/s/96c4f00fdb43
提取码:见文章末尾
3. 访问应用
-
前端页面: http://127.0.0.1:8000/
API 端点
认证
| 方法 | 路径 | 描述 |
|---|---|---|
| POST | /api/auth/register |
用户注册 |
| POST | /api/auth/login |
用户登录 |
| GET | /api/users/me |
获取当前用户信息(需认证) |
植物管理
| 方法 | 路径 | 描述 |
|---|---|---|
| GET | /api/plants |
获取我的植物列表(分页) |
| POST | /api/plants |
添加植物 |
| GET | /api/plants/{plant_id} |
获取植物详情 |
| PUT | /api/plants/{plant_id} |
更新植物信息 |
| DELETE | /api/plants/{plant_id} |
删除植物 |
养护记录
| 方法 | 路径 | 描述 |
|---|---|---|
| GET | /api/plants/{plant_id}/records |
获取某植物的养护记录(分页) |
| POST | /api/plants/{plant_id}/records |
添加养护记录 |
| DELETE | /api/records/{record_id} |
删除养护记录 |
养护提醒
| 方法 | 路径 | 描述 |
|---|---|---|
| GET | /api/reminders |
获取我的所有提醒 |
| POST | /api/reminders |
创建提醒 |
| PUT | /api/reminders/{reminder_id} |
更新提醒 |
| POST | /api/reminders/{reminder_id}/done |
标记提醒完成 |
| DELETE | /api/reminders/{reminder_id} |
删除提醒 |
环境变量
| 变量名 | 描述 | 默认值 |
|---|---|---|
DATABASE_URL |
数据库连接 URL | sqlite:///./green_plants.db |
SECRET_KEY |
JWT 密钥 | super-secret-key-change-in-production |
项目结构
green_plant_manager/
├── app/
│ ├── __init__.py
│ ├── main.py # FastAPI 应用入口
│ ├── database.py # 数据库配置
│ ├── models.py # SQLAlchemy 模型
│ ├── schemas.py # Pydantic 模型
│ ├── auth.py # JWT 认证模块
│ ├── crud.py # 数据库 CRUD 操作
│ └── routers/
│ ├── __init__.py
│ ├── users.py # 用户路由
│ ├── plants.py # 植物路由
│ ├── records.py # 养护记录路由
│ └── reminders.py # 提醒路由
├── static/
│ └── index.html # 前端单页应用
├── requirements.txt
└── README.md
前端页面功能
前端页面采用单页应用(SPA)架构,无需刷新即可切换视图:
登录/注册
-
用户注册:输入用户名、邮箱、密码
-
用户登录:使用用户名和密码登录
-
Token 自动保存在 localStorage
植物管理
-
列表视图:卡片式展示所有植物,支持分页
-
添加植物:填写名称、品种、图片URL、购买日期、位置、备注
-
编辑植物:点击植物卡片上的编辑按钮
-
删除植物:级联删除相关养护记录和提醒
-
详情视图:点击植物卡片查看详情和养护记录
养护记录
-
查看记录:在植物详情页查看该植物的所有养护记录
-
添加记录:选择操作类型(浇水/施肥/修剪/换盆/其他),填写日期和备注
-
删除记录:点击记录旁的删除按钮
养护提醒
-
创建提醒:选择植物、提醒类型、间隔天数
-
查看提醒:显示下次提醒日期、是否逾期、启用状态
-
标记完成:点击"完成"按钮更新上次执行日期
-
启用/禁用:切换提醒的启用状态
-
删除提醒:点击删除按钮
注意事项
-
生产环境请更换强 SECRET_KEY
-
生产环境建议使用 PostgreSQL 数据库
-
密码使用 bcrypt 哈希存储
-
所有需要认证的端点都需要在请求头中携带 JWT token




往期免费源码对应视频:
免费获取--SpringBoot+Vue宠物商城网站系统
🥂(❁´◡`❁)您的点赞👍➕评论📝➕收藏⭐➕关注👀是作者创作的最大动力🤞
💖📕🎉🔥 支持我:点赞👍+收藏⭐️+留言📝+关注👀欢迎留言讨论
🔥🔥🔥(源码 + 调试运行 + 问题答疑)
🔥🔥🔥 有兴趣可以联系我
💖学习知识需费心,
📕整理归纳更费神。
🎉源码免费人人喜,
🔥码农福利等你领!💖常来我家多看看,
📕网址:扣棣编程,
🎉感谢支持常陪伴,
🔥点赞关注别忘记!💖山高路远坑又深,
📕大军纵横任驰奔,
🎉谁敢横刀立马行?
🔥唯有点赞+关注成!
⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇点击此处获取源码⬇⬇⬇⬇⬇⬇⬇⬇⬇
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)