Django开发一个学生选课系统

时间:2024-04-13 13:42:15

在这个选课系统中,分为管理员和学生两种角色。
学生登录系统以后,只能看到选课信息。管理员登录以后,可以看到选课信息和其他的管理系统。

选课界面如下:
在这里插入图片描述

学生管理界面如下:
在这里插入图片描述

数据分析界面如下:
在这里插入图片描述

数据详情信息如下:
在这里插入图片描述

登录界面如下:
在这里插入图片描述

目前后端代码已经基本实现:
在这里插入图片描述

这里分享一些简单的代码片段。

首先是登录功能,这里利用的是Django自带的登录功能,代码如下:

def login_view(request):
    context = {}
    if request.method == "POST":
        username = request.POST.get("username", '')
        password = request.POST.get("password", '')
        # authenticate方法用来验证用户的账号密码是否正确,如果正确,返回User对象,否则返回None
        user = authenticate(username=username, password=password)
        if user is not None:  # 判断是否正确
            login(request, user)  # 登陆账户
            return redirect("student:elective")  # 重定向到主页,切不可使用render方法,返回的是静态页面,css样式有问题。
        context["error"] = "账号或密码错误"
    return render(request, "index/login.html", context)

然后是如何区分是否为管理员:{% if request.user.is_staff %}
在这里插入图片描述

其他代码就是一些增删改查,没啥太大的难度。

相关文章