小白从零开始做多模态新生儿疼痛评估系统|第八篇:放弃IDEA复杂配置!CMD命令行一键搭建Python后端
哈喽大家好~这里是踩坑后果断换思路、效率拉满的项目小白!
上一篇(《小白从零开始做多模态新生儿疼痛评估系统|第七篇:Navicat数据库设计实操(三端适配+核心表构建)》),我们已经在Navicat中完成了数据库和6张核心表的创建,数据地基已经稳稳打好。
本来想继续在IDEA里配置Python环境,结果我发现:IDEA默认不带Python支持,装插件、配解释器步骤又多又容易出错,也考虑过使用vscode等软件,但是考虑一个项目在同一个软件里,更方便我们理解。
所以这一篇我直接换最简单、最稳的方案:不用在IDEA里配置任何Python,前端继续用IDEA写,后端直接用CMD命令行跑,两步分开、互不干扰,全程零配置陷阱,小白照着做一遍必成功!
一、思路转变:为什么不推荐在IDEA里配Python?
很多同学用的是 IntelliJ IDEA 旗舰版/社区版,它本身是做Java开发的:
-
默认不内置Python插件
-
装插件、配解释器、选虚拟环境步骤繁琐
-
容易出现“找不到模块”“运行按钮不显示”等莫名其妙的报错
-
对只写前端、偶尔跑后端的场景完全没必要折腾
所以我直接给出小白最优解:
-
写前端 HTML / CSS / JS → 继续用 IDEA
-
运行 Python 后端 → 只用系统自带的 CMD 命令提示符
两套工具互不干扰,简单、稳定、不出错。
二、前期准备:检查Python环境
第1步:打开命令提示符
-
快捷键
Win + R -
输入
cmd回车
第2步:检查是否安装Python
在CMD里输入:
python --version

-
如果出现类似
Python 3.8 / 3.9 / 3.10 / 3.11→ 环境正常,直接跳到第3步 -
如果提示“不是内部或外部命令” → 执行第2步安装Python
三、安装Python(未安装才需要做)
-
打开官网:https://www.python.org/downloads/(文档提示字数超限,直接点击官网黄色下载按钮即可)
-
点击黄色按钮 Download Python 3.x.x
-
运行安装包
-
⚠️ 必勾选:Add Python to PATH(不勾后面全报错)
-
点击
Install Now等待完成 -
安装完关闭旧CMD,重新开一个CMD
再次输入 python --version,能显示版本号就成功。
四、创建后端文件结构
在你放前端HTML页面的项目文件夹里,新建一个文件夹,命名为:
backend
在backend 里用记事本新建两个文件:
文件1:database.py
复制下面全部代码,注意修改你的MySQL密码和数据库名:
import mysql.connector
from mysql.connector import poolingdb_config = {
"host": "localhost",
"user": "root",
"password": "你的MySQL密码", # 改成你的密码
"database": "np",
"pool_name": "mypool",
"pool_size": 10
}connection_pool = pooling.MySQLConnectionPool(**db_config)
def get_db_connection():
return connection_pool.get_connection()def execute_query(sql, params=None, fetch_one=False, fetch_all=False):
conn = get_db_connection()
cursor = conn.cursor(dictionary=True)
try:
cursor.execute(sql, params or ())
if fetch_one:
result = cursor.fetchone()
elif fetch_all:
result = cursor.fetchall()
else:
conn.commit()
result = cursor.lastrowid
return result
finally:
cursor.close()
conn.close()
文件2:main.py
复制下面全部代码,不用改任何内容:
from fastapi import FastAPI, Form
from fastapi.middleware.cors import CORSMiddleware
import uvicorn
import random
from database import execute_query
app = FastAPI(title="新生儿疼痛评估系统API")
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.get("/")
async def root():
return {"message": "新生儿疼痛评估系统运行中", "status": "ok"}
@app.get("/api/beds")
async def get_beds():
sql = """
SELECT b.id, b.bed_number, b.status, b.device_status,
p.id as patient_id, p.name as patient_name
FROM beds b
LEFT JOIN patients p ON b.current_patient_id = p.id
"""
beds = execute_query(sql, fetch_all=True)
return {"success": True, "data": beds}
@app.get("/api/patients")
async def get_patients():
sql = """
SELECT p.*, b.bed_number
FROM patients p
LEFT JOIN beds b ON b.current_patient_id = p.id
"""
patients = execute_query(sql, fetch_all=True)
return {"success": True, "data": patients}
@app.post("/api/assess")
async def create_assessment(
patient_id: int = Form(...),
bed_id: int = Form(...),
nurse_notes: str = Form("")
):
pain_score = round(random.uniform(0, 10), 1)
if pain_score <= 2:
pain_level = "平静"
elif pain_score <= 5:
pain_level = "轻度疼痛"
elif pain_score <= 8:
pain_level = "中度疼痛"
else:
pain_level = "重度疼痛"
sql = """
INSERT INTO assessments (patient_id, bed_id, pain_score, pain_level, nurse_notes)
VALUES (%s, %s, %s, %s, %s)
"""
assessment_id = execute_query(sql, (patient_id, bed_id, pain_score, pain_level, nurse_notes))
return {
"success": True,
"assessment_id": assessment_id,
"pain_score": pain_score,
"pain_level": pain_level
}
if __name__ == "__main__":
print("=" * 50)
print("后端启动中...")
print("API文档: http://localhost:8000/docs")
print("=" * 50)
uvicorn.run(app, host="0.0.0.0", port=8000, reload=True)
五、安装Python依赖包
重新打开CMD,输入下面命令安装后端需要的库:
pip install fastapi uvicorn mysql-connector-python python-multipart
重点提示:若安装时出现“link fetch error” 报错(文档中相关URL反馈此问题),说明默认镜像源访问失败,改用清华镜像源安装,命令如下:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple fastapi uvicorn mysql-connector-python python-multipart
等待出现 Successfully installed 即完成。
六、启动后端服务
第1步:进入backend文件夹
在CMD里输入(换成你自己的项目路径):
cd /d D:\你的项目路径\backend

第2步:启动服务
python main.py
出现下面内容就代表启动成功:
================================================== 后端启动中... API文档: http://localhost:8000/docs ================================================== INFO: Uvicorn running on http://0.0.0.0:8000
注意:若启动后访问 http://0.0.0.0:8000 出现 “link fetch error” 报错,可检查端口是否被占用,或重新启动后端服务。
我这里出现了警告
修改 main.py 文件最后一行
找到 main.py 文件,把最后一行:
uvicorn.run(app, host="0.0.0.0", port=8000, reload=True)
改成:
uvicorn.run("main:app", host="0.0.0.0", port=8000, reload=True)
重新运行,正常
七、验证后端是否正常
打开浏览器,访问:
http://localhost:8000
如果看到:
{"message":"新生儿疼痛评估系统运行中","status":"ok"}

说明:
-
Python环境正常
-
后端服务启动成功
-
数据库连接配置无误
再访问接口文档:
http://localhost:8000/docs

能看到所有API接口列表,就完全OK。
八、小白常见报错解决
-
报错:No module named ‘fastapi’
-
原因:依赖没装上
-
解决:重新执行pip安装命令,若出现“link fetch error”,改用清华镜像源
-
-
报错:数据库连接失败
-
原因:密码错 / MySQL没开 / 数据库名不对
-
解决:检查database.py里的password和database,确保MySQL服务正在运行
-
-
报错:端口8000被占用
-
解决:把main.py最后一行port改成8001/8080等
-
-
CMD找不到python
-
解决:重装Python,务必勾选Add Python to PATH
-
-
报错:“link fetch error”
-
原因:pip镜像源访问失败(对应文档中清华镜像、后端访问URL报错)
-
解决:安装依赖用清华镜像源,访问后端用
http://localhost:8000替代http://0.0.0.0:8000,重新启动服务
-
九、项目分工与工具总结
|
工作内容 |
使用工具 |
优势 |
|---|---|---|
|
编写前端三端H5页面 |
IDEA |
专业、熟悉、不用改 |
|
运行Python后端API |
CMD命令行 |
零配置、不报错、简单稳定 |
两套工具完全独立,互不干扰,这是最适合小白的开发模式。
十、当前进度 & 下一步计划
已完成
-
✅ 三端H5页面搭建
-
✅ MySQL数据库 + 6张核心表
-
✅ Python + FastAPI后端环境搭建(解决“link fetch error”等报错)
-
✅ 后端API服务启动成功并可访问
下一步(第九篇内容)
-
前端HTML页面对接后端API
-
实现床位列表、患者信息、疼痛评估接口调用
-
页面真实数据渲染,让三端真正“活”起来
如果你也在跟着做新生儿疼痛评估系统,遇到任何命令行、启动、报错问题(尤其是“link fetch error”相关),欢迎在评论区留言,我会一一解答!
小白继续冲,下一篇直接前后端联调~🚀
更多推荐
所有评论(0)