搭建简单的web学生成绩管理系统(python+flask+html)
时间: 2023-10-05 11:03:05 浏览: 72
要搭建一个简单的web学生成绩管理系统,可以使用Python中的Flask框架和HTML来实现。
首先,我们需要安装Flask框架。可以使用pip命令在命令行中执行以下命令:
```
pip install flask
```
安装完成后,我们可以创建一个Python文件,命名为app.py。在该文件中,首先导入Flask模块,并创建一个Flask应用程序:
```python
from flask import Flask
app = Flask(__name__)
```
接下来,我们需要定义一个路由,来处理浏览器发送的请求。我们可以使用装饰器的方式来定义路由。例如,我们可以定义一个路由来展示学生成绩的列表:
```python
@app.route('/grades')
def show_grades():
# 在这里处理学生成绩的逻辑
return "这里展示学生成绩列表"
```
在这个路由函数内部,我们可以添加逻辑来获取学生成绩列表,并返回一个HTML页面来展示这些学生成绩。
为了展示学生成绩列表,我们可以创建一个HTML模板。可以在应用程序的根目录下创建一个templates文件夹,并在该文件夹内创建一个名为grades.html的文件。在这个HTML文件中,我们可以使用Flask提供的模板语法来展示学生成绩列表:
```html
<!DOCTYPE html>
<html>
<head>
<title>学生成绩列表</title>
</head>
<body>
<h1>学生成绩列表</h1>
<table>
<thead>
<tr>
<th>学号</th>
<th>姓名</th>
<th>科目</th>
<th>成绩</th>
</tr>
</thead>
<tbody>
{% for grade in grades %}
<tr>
<td>{{ grade['student_id'] }}</td>
<td>{{ grade['name'] }}</td>
<td>{{ grade['subject'] }}</td>
<td>{{ grade['score'] }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</body>
</html>
```
在这个HTML模板中,我们使用了模板语法来遍历学生成绩列表,并将每个学生成绩的相关信息展示在表格中。
回到app.py文件中,我们可以在路由函数中渲染这个HTML模板,并将学生成绩列表传递给模板:
```python
@app.route('/grades')
def show_grades():
# 获取学生成绩列表
grades = [
{
'student_id': '001',
'name': '小明',
'subject': '数学',
'score': '90'
},
{
'student_id': '002',
'name': '小红',
'subject': '语文',
'score': '80'
}
]
return render_template('grades.html', grades=grades)
```
这里我们创建了一个名为grades的变量,用来存储学生成绩列表。然后我们通过render_template函数来渲染grades.html模板,并将grades变量传递给模板。
最后,我们需要在app.py文件中添加一段代码来运行应用程序:
```python
if __name__ == '__main__':
app.run()
```
现在,我们可以在命令行中执行以下命令来启动应用程序:
```
python app.py
```
然后在浏览器中输入http://127.0.0.1:5000/grades来查看学生成绩列表。