Django 开发后台管理系统

数据库:python自带数据库

开发系统:windows ,pycharm

主要实现功能:

1)登录与注册页面

2)添加页面

3)更新页面

4)查询页面

5)删除页面

6)账号页面

 

1)登录与注册页面

 对表单数据进行验证( 从数据库验证)账号密码都存在就登录进入后台;否则就提示账号密码错误

点击注册按钮进入注册页面:账号密码是必填项,没有按要求填写就提示输入,按layout推出注册

2)添加页面

 

3)更新页面

4)查询页面

5)删除页面

6)账号页面

第二部分:

所有的文件中的目录:

由于代码较多:所以就上部分代码:

数据库字段:

from django.db import models

# Create your models here.
class Info(models.Model):
    num = models.IntegerField(primary_key=True)
    name = models.CharField(max_length=50)
    classroom = models.CharField(max_length=60)
    school = models.CharField(max_length=60)
    number = models.IntegerField()

class Register(models.Model):
    name = models.CharField(max_length=20)
    pwd = models.CharField(max_length=20)
    tel = models.CharField(max_length=20)
    campus = models.CharField(max_length=20)


根目录下的urls:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('xuesheng/', include('app1.urls')),

app下的urls

from django.contrib import admin
from django.urls import path
from . import views
urlpatterns = [
    path('index.html', views.index, name='search'),
    path('insert.html', views.add_index, name='insert'),
    path('update.html', views.update_search_index, name='update'),
    path('update_search.html', views.update_index, name='update_search'),
    path('del.html', views.del_index, name='del'),
    path('del_search.html', views.del_search_index, name='del_search'),
    path('login.html', views.login, name='login'),#登录页面url
    path('register.html', views.login_register, name='register'), #注册页面
    path('register_get', views.register_get, name='register_get'),#注册信息提交
    path('acount.html', views.acount, name='acount')
]

app下的MTV中重要的views:

from django.shortcuts import render, redirect
from app1.models import Info, Register


#查询
def index(request):
    infos = Info.objects.all()
    return render(request, 'index.html',locals())

#添加数据
def add_index(request):
    # 获取表单参数
    result = {}
    if request.POST:
        num = int(request.POST['xuehao'])
        name = request.POST['name']
        classroom = request.POST['xueyuan']
        school = request.POST['banji']
        number = request.POST['average']
        Info.objects.create(num=num, name=name, classroom=classroom, school=school, number=number)
        result['ids'] = name
    return render(request, 'add.html', result)

#更新数据时根据姓名查找
def update_search_index(request):
    infos = {}
    if request.method == 'POST':
        info = request.POST['name']
        list = Info.objects.filter(name=info)
        for li in list:
            info_s = []
            info_s.append(li)
            infos['inf'] = info_s
        infos['xingm'] = info        #初始化姓名表单
    return render(request, 'update.html', infos)

#根据姓名更新个人信息
def update_index(request):
    content = {}
    if request.method == 'POST':
        info = request.POST['xingming']  #获取表单数据
        num = int(request.POST['xuehao'])
        classroom = request.POST['xueyuan']
        school = request.POST['banji']
        number = request.POST['average']
        #按姓名查询数据库  更新学生信息
        Info.objects.filter(name=info).update(num=num, classroom=classroom, school=school, number=number)
        content['message'] = "数据修改成功"
    return render(request, 'update.html', content)

#按姓名删除数据
#显示待删除的数据
def del_search_index(request):
    infos = {}
    if request.method == 'POST':
        info = request.POST['name']
        list = Info.objects.filter(name=info)
        for li in list:
            info_s = []
            info_s.append(li)
            infos['inf'] = info_s
        infos['xingm'] = info  # 初始化姓名表单
    return render(request, 'del.html', infos)

#删除数据
def del_index(request):
    content = {}
    if request.method == "POST":
        info = request.POST['name']  # 获取表单数据
        Info.objects.filter(name=info).delete()#删除单条数据
        content['message'] = "删除成功"
    return render(request, 'del.html', content)


#登录首页
def login(request):
    return render(request, 'login.html')


#点击注册进行注册
def login_register(request):
    if request.POST:
        if 'resg' in request.POST:                      #处理表单多键 判断按键的name属性
            return render(request, 'register.html')
        else:
            usr = request.POST['username']
            pwsd = request.POST['pwd']
            if usr and pwsd:
                user = Register.objects.filter(name=usr)        #返回的是queryset列表形式
                for p in user:
                    user = p.name
                    password = p.pwd
                    if usr == user and pwsd == password:
                        return redirect('index.html')           #验证成功跳转到首页否则提示错误
                    else:
                        content = {'tip': '账号或密码错误'}
                        return render(request, 'login.html', locals())
            else:
                content = {'tip': '请输入账号和密码'}
                return render(request, 'login.html', locals())



#获取注册信息
def register_get(request):
    if request.POST:
        name = request.POST['mingcheng']
        mima = request.POST['mima']
        tel = request.POST['tel']
        campus = request.POST['campus']
        if name and mima:
            Register.objects.create(name=name, pwd=mima, tel=tel, campus=campus)
            content = {'tip': '注册成功'}
        else:
            content = {'tip': '请输入账号和密码'}
    return render(request, 'register.html', locals())

#查询注册账户
def acount(request):
    infos = Register.objects.all()
    return render(request, 'acount.html', locals())

网页代码没上载上来,实在有点多,有需要的朋友可以留言我发给你。

  • 5
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 39
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 39
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值