django制作一个简单的学生系统

简单制作一个学生系统

django项目

一个django项目包含基本的几个部分:

路由(主路由和分路由-urls),主设置(settings),文件和静态文件(static,templates),orm系统(models)

思路

通过路由进行路径的转发,实现页面间的跳转。通过django自带的orm系统,进行数据库表格的增删改查,而一个学生管理系统,目前来看就是简单的增删改查

执行

数据库配置

django默认使用的是初始化时产生的那个db.sqlite3,如果想要使用mysql,则需要修改原有配置为如下

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'stu_info_sys',
        'HOST':'localhost',
        'PORT':3306,
        'USER':'root',
        'PASSWORD':'你的密码',
    }
}
增删改查

如下使用了django的Orm系统

首先将数据放到首页展示,即查询所有数据

而django自带的orm系统,简单的语句就可以查询到所有数据,这里的Student_info是models里面的类,models里面的类通过继承models.Model进行继承,下面的就成了表格,与数据库进行了绑定,默认会生成一个系统自动生成的表格django_开头的后续跟着小写的类名,我们可以通过如下的方法进行表格名字的定义

stu_records = Student_info.objects.all()
from django.db import models
class Student_info(models.Model):
    name = models.CharField(max_length=32,verbose_name = '学生姓名')
    gender = models.CharField(max_length=4,verbose_name="性别")
    age = models.SmallIntegerField(verbose_name="年龄")
    major = models.CharField(max_length=32)
    come_from = models.CharField(max_length=32)
    class Meta:
        db_table = "student_info"

添加一个学生:从前端的表单里面获取到提交上来的学生信息,通过Orm系统进行学生数据的添加

这里分为了get方式和post方式的区别,get就是普通请求,post是表单提交,当有表单信息提交上来之后,我们就对数据处理,否则给到它前端填写数据的页面。

# 添加一个学生的信息
def add_stu(request):
    if request.method == 'GET':
        return render(request, 'add_stu.html')
    # 获取表单数据
    name = request.POST.get('name')
    gender = request.POST.get('gender')
    age = request.POST.get('age')
    major = request.POST.get('major')
    come_from = request.POST.get('come_from')
    # 写入数据库
    Student_info.objects.create(
        name=name,
        gender=gender,
        age=age,
        major=major,
        come_from=come_from
    )
    # 重定向到 学生信息列表
    return redirect('/stu/')

修改一个学生的信息

修改数据和增加学生数据是一样的,区别在于提前通过id获取到数据,在已有的数据基础上进行修改

# 修改学生信息
def edit(request, id):
    if request.method == "GET":
        # 从数据库当中查询到 指定id的记录
        student = Student_info.objects.get(id=id)
        return render(request, 'modify_stu.html', {'student': student})
    # 获取表单数据
    name = request.POST.get('name')
    age = request.POST.get('age')
    gender = request.POST['gender']
    major = request.POST.get('major')
    come_from = request.POST.get('come_from')
    # 更新学生信息
    Student_info.objects.filter(id=id).update(
        name=name,
        age=age,
        gender=gender,
        major=major,
        come_from=come_from
    )
    # 重定向
    return redirect('/stu/')

删除用户数据,这里和修改数据类似,只是获取到id直接删除即可

def remove(request, id):
    Student_info.objects.get(id=id).delete()
    # 重定向
    return redirect('/stu/')

总结

这里我们简单的制作了一个django项目,其实我们在后续的开发中,也就是在此基础上进行更多维度的考虑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值