学生管理平台项目django

setting里的各种设置:

*******CSRF的设置:
MIDDLEWARE = [
‘django.middleware.security.SecurityMiddleware’,
‘django.contrib.sessions.middleware.SessionMiddleware’,
‘django.middleware.common.CommonMiddleware’,
# ‘django.middleware.csrf.CsrfViewMiddleware’, 出现csrf_token的报错可以注释了:
‘django.contrib.auth.middleware.AuthenticationMiddleware’,
‘django.contrib.messages.middleware.MessageMiddleware’,
‘django.middleware.clickjacking.XFrameOptionsMiddleware’,
]

******数据库的设置:
·DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’,
‘HOST’: ‘127.0.0.1’,
‘PORT’: ‘3306’,
‘NAME’: ‘’, #数据库名
‘USER’: ‘root’,
‘PASSWORD’: ‘’, #密码
‘OPTIONS’: {
‘init_command’: “SET sql_mode=‘STRICT_TRANS_TABLES’”,
},
}
}

******TEMPALTES的设置:

TEMPLATES = [
{
‘BACKEND’: ‘django.template.backends.django.DjangoTemplates’,
‘DIRS’: [os.path.join(BASE_DIR,‘templates’)], 设置templates
‘APP_DIRS’: True,
‘OPTIONS’: {
‘context_processors’: [
‘django.template.context_processors.debug’,
‘django.template.context_processors.request’,
‘django.contrib.auth.context_processors.auth’,
‘django.contrib.messages.context_processors.messages’,
],
},
},
]

*******时区设置:

LANGUAGE_CODE = ‘zh-Hans’

TIME_ZONE = ‘Asia/Shanghai’

USE_I18N = True

USE_L10N = True

USE_TZ = False

*******static设置
STATIC_URL = ‘/static/’
STATICFILES_DIRS = [
os.path.join(BASE_DIR, ‘static’),
]

*******urls各种设置:
主路由的设置:
from django.contrib import admin
from django.urls import path,include

urlpatterns = [
path(‘admin’, include(‘admin.urls’)),
]


子路由的设置:
from django.urls import path
from web import views : 链接视图

urlpatterns = [
path(‘admin/’, views.Admin.as_view()),
]

添加APP:
INSTALLED_APPS = [
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
‘’, 在这里添加子app
]

**************视图写法各种逻辑:
from django.shortcuts import render,redirect
from django.views import View
from web.models import *

Create your views here.

注册

class Zhuce(View):
def get(self,request):
return render(request,‘zhuce.html’)
def post(self,request):
if request.method == ‘POST’:
username = request.POST.get(‘username’)
password1 = request.POST.get(‘password1’)
password2 = request.POST.get(‘password2’)
if all([username,password1,password2]):
user = Teacher.objects.filter(name=username).first()
if not user:
if password1 == password2:
teacher = Teacher(name=username,password=password1)
teacher.save()

                    return redirect('/zhuce/')

登录

class Login(View):
def get(self,request):
return render(request,‘login.html’)
def post(self,request):
if request.method == ‘POST’:
username = request.POST.get(‘username’)
password = request.POST.get(‘password’)
if all([username,password]):
teacher = Teacher.objects.filter(name=username).first()
if teacher:
if password == teacher.password:
request.session[‘username’] = username
request.session[‘id’] = teacher.id
return redirect(’/index/’)

#主页
class Index(View):
def get(self,request):
username = request.session.get(‘username’)
teacher = Teacher.objects.all()
return render(request,‘index.html’,{‘teacher’:teacher,‘username’:username})

添加

class addStudent(View):
def get(self,request):
username = request.session.get(‘username’)
return render(request,‘addstudent.html’,{‘username’:username})
def post(self,request):
id = request.session.get(‘id’)
if request.method == ‘POST’:
sname = request.POST.get(‘sname’)
age = request.POST.get(‘age’)
if all([sname,age]):
student = Student(name=sname,age=age,t_id=id)
student.save()
return redirect(’/addstudent/’)

操作

class getStudent(View):
def get(self,request):
username = request.session.get(‘username’)
id = request.session.get(‘id’)
student = Student.objects.filter(t_id=id).all()
return render(request,‘getstudent.html’,{‘username’:username,‘student’:student})

操作

class delStudent(View):
def get(self,request):
id = request.GET.get(‘id’)
if id:
student = Student.objects.filter(id=id).first()
student.t_id = 0
student.save()
return redirect(’/getstudent/’)

class getnotstudent(View):
def get(self,request):
student = Student.objects.filter(t_id=0).all()
return render(request,‘getnotstudent.html’,{‘student’:student})

class addstudent(View):
def get(self,request):
tid = request.session.get(‘id’)
print(tid)
id = request.GET.get(‘id’)
if id:
student = Student.objects.filter(id=id).first()
student.t_id = tid
student.save()
return redirect(’/getnotstudent/’)

********创表:建库
from django.db import models

Create your models here.

class Teacher(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=30)
password = models.CharField(max_length=100)

class Meta:
    db_table = 'teacher'

class Student(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=30)
age = models.IntegerField()
t_id = models.IntegerField(default=0)
teacher = models.ForeignKey(Teacher,on_delete=models.SET_NULL,null=True)

class Meta:
    db_table = 'student'

******app设置
from django.apps import AppConfig

class WebConfig(AppConfig):
name = ‘web’

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值