在这个选课系统中,分为管理员和学生两种角色。
学生登录系统以后,只能看到选课信息。管理员登录以后,可以看到选课信息和其他的管理系统。
选课界面如下:
学生管理界面如下:
数据分析界面如下:
数据详情信息如下:
登录界面如下:
目前后端代码已经基本实现:
这里分享一些简单的代码片段。
首先是登录功能,这里利用的是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 %}
其他代码就是一些增删改查,没啥太大的难度。