基于Django的学生信息管理系统

项目目标

学习django框架下的环境搭建,基于前后端分离的开发模式,了解路由表创建、数据库表创建及增删改查操作、Python前后端交互功能实现。

该项目主要实现的功能,包括登录、注册、学生档案、课程管理、成绩管理。

开发环境:Pycharm(2021.1.1)(Community版)、Python3.8、Django2.1.5、sqlite数据库

aeba494840fa4eda88ec69f12a7e4cf0.png

环境搭建

1.安装pycharm软件

2.打开cmd,安装python,如果已经有Python环境,直接进行下一步

canda create -n python-my python=3.8

3.进入pycharm的终端

activate python-my(进入虚拟环境)

安装django,输入命令pip install Django==2.1.5

创建hjsms项目,输入命令django-admin startproject hjsms

4.进入项目所在的文件地址,启动服务器,python manage.py runserver 81,在浏览器中输入网址(http://127.0.0.1:81)测试是否安装成功

5.之后每次启动项目的命令:

activate python-my(进入虚拟环境)

python manage.py runserver 81(启动服务器)

按住Ctrl+backspace,重启项目

7028fdc553134614b4db831d2e2583b1.png

创建项目

  • 路由表

1.主路由(进入项目中的每个模块的路由)

5b14766c7ff54034a463f2dade4336e4.png

2.子路由(每个模块下的具体功能的路由)

这里的路由可以选择跳转到后端方法进行数据处理,也可直接跳转到前端页面。

e1d5407376174779abb506a2000b45fe.png

  • 数据库

1.生成项目自带的数据库文件

进入pycharm终端,输入python manage.py migrate
就会在 项目的根目录下面 生成一个指定的数据库文件 db.sqlite3

6b3666b99dd44e599e6367ef4b04be62.png

2.创建common项目文件

在pycharm终端,输入python manage.py startapp common,会生成如下文件夹

6e439208e4e246d5a3ce39602257bff5.png

进入该文件夹下的models.py,在其中创建数据库

from django.db import models
class Customer(models.Model):
    # 客户名称
    name = models.CharField(max_length=200)
    # 联系电话
    phonenumber = models.CharField(max_length=200)
    # 地址
    address = models.CharField(max_length=200)

 找到settings.py文件,在 INSTALLED_APPS 配置项 加入如下内容:

54fed354193340089fde0d0577d5c827.png

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    # 加入下面这行
    'common.apps.CommonConfig',
]

在终端输入python manage.py makemigrations common 

再输入python manage.py migrate,如果出现如下代码,证明创建成功

Operations to perform:
  Apply all migrations: admin, auth, common, contenttypes, sessions
Running migrations:
  Applying common.0001_initial... OK

3.安装sqlite数据库工具—— sqlite studio


下载后直接解压,运行exe文件就能使用。 运行该工具, 然后打开项目文件 db.sqlite3,在sqlite studio中,能找到common_customer表,这个就是刚刚创建的表,然后可以在sqlite studio中,手动创建其他表

4.本项目的数据库设计

myu(用户信息) 

列名

类型

 

Id

Integer

主键,自增

Username

### 基于 Django学生信息管理系统实现方法 #### 项目概述 Django 是一种高级 Python Web 框架,它鼓励快速开发和干净的设计原则。通过 Django 构建学生信息管理系统可以高效地管理和查询学生的数据[^1]。 #### 创建 Django 项目 首先,在 PyCharm 或命令行工具中创建一个新的 Django 项目: ```bash django-admin startproject student_management_system cd student_management_system ``` 接着,创建一个应用来处理学生信息的具体逻辑: ```bash python manage.py startapp students ``` #### 配置 settings.py 文件 打开 `student_management_system/settings.py` 并配置数据库以及安装的应用程序列表。默认情况下,SQLite 数据库已经设置好,因此无需额外修改数据库部分。确保在 `INSTALLED_APPS` 中添加新创建的应用: ```python INSTALLED_APPS = [ ... &#39;students&#39;, ] ``` #### 定义模型 编辑 `students/models.py` 来定义学生的信息结构。例如,假设我们需要存储姓名、年龄、性别和班级等字段,则可以这样设计模型: ```python from django.db import models class Student(models.Model): GENDER_CHOICES = ( (&#39;M&#39;, &#39;Male&#39;), (&#39;F&#39;, &#39;Female&#39;) ) name = models.CharField(max_length=100, verbose_name="Name") # 学生名字 age = models.PositiveIntegerField(verbose_name="Age") # 年龄 gender = models.CharField(max_length=1, choices=GENDER_CHOICES, verbose_name="Gender") # 性别 class_name = models.CharField(max_length=50, verbose_name="Class Name") # 所属班级 def __str__(self): return self.name ``` 运行迁移命令以同步数据库表: ```bash python manage.py makemigrations python manage.py migrate ``` #### 创建视图函数 在 `students/views.py` 中编写用于展示和操作学生数据的视图函数。以下是显示所有学生记录的一个简单例子: ```python from django.shortcuts import render from .models import Student def list_students(request): all_students = Student.objects.all() context = {&#39;all_students&#39;: all_students} return render(request, &#39;students/list.html&#39;, context) ``` #### 设置 URL 路由 为了使上述视图能够被访问到,需调整项目的路由文件 `student_management_system/urls.py` 和应用内的子路由文件 `students/urls.py`: ##### 主路由 (student_management_system/urls.py) ```python from django.contrib import admin from django.urls import path, include urlpatterns = [ path(&#39;admin/&#39;, admin.site.urls), path(&#39;&#39;, include(&#39;students.urls&#39;)), # 将请求转发给 students 应用中的 urls.py 处理 ] ``` ##### 子路由 (students/urls.py) ```python from django.urls import path from .views import list_students urlpatterns = [ path(&#39;list/&#39;, list_students, name=&#39;list-students&#39;), # 显示学生列表页面 ] ``` #### 设计模板 最后一步是在 `templates/students/` 下新建 HTML 文件(如 `list.html`),用来渲染前端界面。这里提供了一个简单的表格布局作为参考: ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Student List</title> </head> <body> <h1>All Students</h1> <table border="1"> <tr> <th>Name</th><th>Age</th><th>Gender</th><th>Class</th> </tr> {% for student in all_students %} <tr> <td>{{ student.name }}</td> <td>{{ student.age }}</td> <td>{{ student.get_gender_display }}</td> <td>{{ student.class_name }}</td> </tr> {% endfor %} </table> </body> </html> ``` 完成以上步骤后即可启动服务器并测试功能: ```bash python manage.py runserver ``` 访问地址 http://localhost:8000/list 即可查看已录入的学生信息。 ---
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

绚烂的萤火

互相学习,共同成长!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值