您的位置:首页 > 其它

8djange-用户登录验证退出-增加字段-修改-未登录自动跳转

2018-12-03 13:04 363 查看
原文链接:https://my.oschina.net/u/4036782/blog/2966794

from django.db import models

from django.contrib.auth.models import AbstractUser

from django.contrib.auth.models import User

# Create your models here.

# class Userapp(AbstractUser):
#     phone=models.CharField(max_length=30)

class Userup(models.Model):

user=models.OneToOneField(User,unique=True,on_delete=models.CASCADE)

phone=models.CharField(max_length=20)
*****************************************************************************
from django.shortcuts import render
from django.contrib.auth.models import User
from django.http import HttpResponse,HttpResponseRedirect
from django.contrib.auth.decorators import login_required
from django.contrib.auth import authenticate,login,logout
from app.models import Userup

# Create your views here.

def index(request):

return render(request,'index.html')

def createuser(request):
User.objects.create_user(username='zs',password='123')
print('用户创建成功')
return HttpResponse()

@login_required()
def detalis(request):
return render(request,'details.html')

def mylogin(request):
if request.POST:
names=request.POST.get('names')
passdd = request.POST.get('passdd')
print(names)
user=authenticate(username=names,password=passdd)
if user is not None:
login(request,user)
print('登录成功')
return HttpResponseRedirect('/detalis/')
else:
return render(request,'denglu.html')
else:
return render(request, 'denglu.html')

def mylogout(request):
logout(request)
return HttpResponseRedirect('/detalis/')

def zhuce2(request):
if request.POST:
userd=request.POST.get('userd')
passd=request.POST.get('passd')
phoned=request.POST.get('phoned')
user=User()
user.username=userd
user.set_password(passd)
user.save()

up=Userup()
up.user_id=user.id
up.phone=phoned
up.save()
return render(request,'zhuce.html',{'msg':'用户创建成功'})
else:
return render(request,'zhuce.html')

def xiugaimima(request,username):
if request.POST:
passd=request.POST.get('passd')
passdd=request.POST.get('passdd')
user=User.objects.get(username=username)
#验证是否能登录
userd = authenticate(username=username, password=passd)
if userd is not None:
user.set_password(passdd)
user.save()
return render(request,'xiugaimima.html',{'msg':'修改成功'})
else:

return render(request, 'xiugaimima.html', {'msg': '原密码错误'})

pass
else:
return render(request,'xiugaimima.html')

************************************************************************************

LOGIN_URL='/mylogin/'

# AUTH_USER_MODEL='app.Userapp'

 

*****************************************************************************************************************************************

增加字段

*********************************************************************************

方案2

*******************************************************************************************************************

修改密码业务

转载于:https://my.oschina.net/u/4036782/blog/2966794

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐