Tango with Django笔记——登录系统

一、Password Hashing、Password Validators都可以自己设置,具体看文档
二、user模型——django.contrib.auth.models.User

1.user模型有5个关键属性: username、password、email address、first name、surname,其他的还有is_active、is_staff、is_superuser等
2.为原来的user模型添加附加字段,需要添加一个一对一的field,然后继续编写需要增加的字段,避免直接继承,防止多个应用直接的冲突

class UserProfile(models.Model):
    user=models.OneToOneField(User)

    website=models.URLField(blank=True)
#设置upload_to='profile_images' ,会把图片上传、存储至与MEDIA_ROOT连接后的目录

    picture=models.ImageField(blank=True,upload_to='profile_images')

三、创建register的视图、模型、表格
四、登录login

def user_login(request):
    if request.method=='POST':
        username=request.POST.get('username')
        password=request.POST.get('password')
        user=authenticate(username=username,password=password)
        if user:
            if user.is_active:
                login(request,user)
                print('登录成功')
                return HttpResponseRedirect(reverse('rango:index'))
            else:
                return HttpResponse("账户不可用!")
        else:
            print('无效的登录信息,{0},{1}'.format(username,password))
            return HttpResponse("无效的登录信息!")
    else:
        return render(request,'rango/login.html',{})

五、使用@login_required装饰器,并设置LOGIN_URL
六、退出登录logout(request)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值