Djngo——登录

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37049781/article/details/84188379

简单账号密码验证登录

#views.py
from django.contrib.auth import authenticate,login as dlogin,logout
def login(request):
	username = request.POST.get('username','')
	password = request.POST.get('password','')
	# 验证成功返回user对象 失败返回None
	user_obj = authenticate(username=username,password=password)
	if user_obj:
		# 登录 login函数会在request中写入cookie sessionid等设置
		# 页面模版语法可用 {% request.user.is_authenticate %}判断是否登录
		dlogin(request, user)
		# 退出登录 logout清除信息
		logout(request)

自定义auth

setting配置

#settings.py
AUTHENTICATION_BACKENDS = ()
#views.py
from django.contrib.auth.backends import ModelBackend
class CustomBackend(ModelBackend)
	def authenticate(self,username=None,password=None,**kwargs)
		try:
			# user是在django中设置的user models对像,默认为user
			user = user.objects.get(username=userrname)
			if user.check_password(password):
				return user
			

猜你喜欢

转载自blog.csdn.net/qq_37049781/article/details/84188379