django 登錄頁面優化

目錄

引言
環境準備
後端代碼
前端代碼
運行程序

引言:

bootstrap登錄頁面外觀比較平庸,看久了有點疲倦,現將登錄頁面美化一下。

環境準備:

1.python3
2.django
3.bootstrap3

後端代碼:

創建login_check視圖函數,用來處理登錄

def login_action(request):
    if request.method == "POST":
        username = request.POST.get('username','')
        password = request.POST.get('password','')
        remember = request.POST.get('remember','')
        print(remember)
        user = auth.authenticate(username=username,password=password)
        if user is not None:
            auth.login(request,user) #登陸
            request.session['user'] = username 
            response = HttpResponseRedirect('/event_manager/')
            
            if remember == "on":
                # 設置cookie username *過期時間爲1周
                response.set_cookie('username', username, max_age=7 * 24 * 3600)
            return response

        else:
            # return render(request,'index.html',{'error':'username or password error!'})
            return redirect('/login/')


創建login視圖函數,用來返回登錄頁面

#登錄顯示頁面
def login(request):
    '''顯示登陸頁面'''
    # 獲取cookie username
    if 'username' in request.COOKIES:
        # 獲取記住的用戶名
        username = request.COOKIES['username']
        print("用戶名名:%s"%username)
    else:
        username = ''
    return render(request,'index_bak.html',{'username': username})

前端HTML部分代碼
<div class="container" style="margin-top: 13%;">
    <div class="row">
        <div class="col-md-4 col-md-offset-4">
            <div class="panel panel-success">
                <div class="panel-heading">登錄信息</div>
                <div class="panel-body">
                    <form action="/login_action/" method="post">
                        <div class="form-group has-feedback">
                            <i class="fa fa-user fa-lg"></i>
                            <input type="text" class="form-control" name="username" value="{{ username }}"
                                   placeholder="用戶名">
                        </div>
                        <div class="form-group has-feedback">
                            <i class="fa fa-lock fa-lg"></i>
                            <input type="password" class="form-control" name="password"
                                   placeholder="密碼">
                        </div>
                        <div class="form-group">
                            <div class="checkbox">
                                <label>
                                    <input type="checkbox" name="remember">記住用戶名
                                </label>
                            </div>
                        </div>
                        <!-- button的btn-block 可以佔滿當前珊欄而不用自適應。-->
                        <button type="submit" class="btn btn-success btn-block btn-lg">登錄</button>
                    </form>
                </div>
            </div>
        </div>
    </div>
</div>

打開瀏覽器訪問登錄頁面:

在這裏插入圖片描述

再對比一下默認的登錄

在這裏插入圖片描述

以上源碼如需要可加羣:696400122獲取。

發佈了59 篇原創文章 · 獲贊 41 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章