• 内置auth 的使用,用超级用户创建


    内置auth 的使用,用超级用户创建

    login.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    
    <form action="/login/" method="post">
        {% csrf_token %}
        <p>
            <label for="">用户名</label>
            <input type="text" name="username">
        </p>
        <p>
            <label for="">密码</label>
            <input type="password" name="password">
        </p>
        <p>
    
            <input type="submit" value="提交">
        </p>
    
    </form>
    
    </body>
    </html>
    View Code

    index.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    
    <h1>这是{{ user.username }}index</h1>
    <h3><a href="/logout/">注销</a></h3>
    
    </body>
    </html>
    View Code

    views.py

    from django.shortcuts import render,redirect,HttpResponse
    from django.contrib import auth
    from django.contrib.auth.decorators import login_required
    
    # Create your views here.
    
    def login(request):
        if request.method == 'POST':
            username = request.POST.get('username')
            password = request.POST.get('password')
            # 判断用户名和密码是否正确
            user = auth.authenticate(request,username=username,password=password)
    
            if user:
                # 将登陆的用户封装到request
                auth.login(request, user)
                return redirect('/index/')
        return render(request, 'login.html')
    
    
    @login_required
    def index(request):
        print(request.user.username)
        ret = request.user.is_authenticated()
        print(ret)
        return render(request,'index.html')
    
    def logout(request):
        auth.logout(request)
        return redirect('/login/')
    
    def register(request):
        #导入auth_user表
        from django.contrib.auth.models import User
        #创建一个用户
        # User.objects.create(username='xiaoming',password='123456')#不用这个
        user_obj = User.objects.create_user(username='xiaoli',password='123456')
        #检查当前密码,打印True Flase
        ret = user_obj.check_password('123123')
        print(ret)
        #修改密码
        user_obj.set_password('111111')
        user_obj.save()
        return HttpResponse('注册成功')
    View Code

    url

    urlpatterns = [
        url(r'^admin/', admin.site.urls),
        url(r'^login',views.login),
        url(r'^index',views.index),
        url(r'^logout',views.logout),
        url(r'^register',views.register),
    
    ]
    View Code

    使用默认的超级用户表

    models中不用创建表

    生成迁移并执行迁移

    python mange.py makemigrations  python manage.py migrate

    创建超级用户 python manage.py createsuperuser

    然后运行 python manage.py runserver

  • 相关阅读:
    Project项目视图
    Console(控制台视图)
    Layout布局列表
    Layers层列表
    帐户下拉
    TransformGizmo(变换)切换
    Play播放控件
    变换工具
    工具栏
    Help帮助
  • 原文地址:https://www.cnblogs.com/chvv/p/9480154.html
Copyright © 2020-2023  润新知