django登录页面优化

  环境准备

1.python3.6
2.django2.0+
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/‘)

 

#登录显示页面
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>

  访问登录页面

再对比一下bootstrap默认的登录风格:

到此,登录页面优化完成,如需源码,请进群获取。

原文地址:https://www.cnblogs.com/liudinglong/p/12283210.html

时间: 2024-08-30 17:36:42

django登录页面优化的相关文章

Django 登录页面的实现

一.目的 Django有自带的登录页面,但是的颜色和页面的样式不是特别的喜欢.因此,利用ace的登录页面(图1)来模仿做一个自己的登录页面(图2).根据实际的应用需要,去掉了Remember Me.Or Login Using.以及register和forgot password等功能.确切的来说,就是该页面只有“登录/验证”功能.     二.所用方法 和所有的Django方法一样,创建好models后,建立登录所需的数据库. 将修改好的模版文件放在app目录下的templates文件夹中,将

一步一步理解 python web 框架,才不会从入门到放弃 -- 简单登录页面

上一节,我们基本了解了 Django 的一些配置,这一节,我们将通过一个简单的登录页面,进一步学习 Django 的使用. 新建项目 首先,新建一个 Django 项目,记得别弄错了哦. settings 中静态文件.templates 路径配置 这里我们已经写好了登录页面(点我下载),但是这一个登录页面不单只是一个 HTML 文件,还有一些静态文件.我们上一次已经说过了,想要在 HTML 中引进静态文件的话,需要在 settings 中配置静态文件夹.login.html 放在 templat

前端开发工程师 - 04.页面架构 - CSS Reset &amp; 布局解决方案 &amp; 响应式 &amp; 页面优化 &amp;规范与模块化

04.页面架构 第1章--CSS Reset 第2章--布局解决方案 居中布局 多列布局 全屏布局 第3章--响应式 浏览网页使用的设备屏幕大小迥异,如何保证页面在不同设备上都正常显示呢? --  解决方法:响应式 优点:无需为不同设备编写对应的页面 --> 降低开发成本.维护成本 缺点:页面中某些部分在某些设备上会被隐藏(资源加载了,但是只是用CSS隐藏了) 为什么在手机端的页面会很小呢? 所有的移动端的页面都引入了viewport视窗 刚开始所有的元素都是加载到一个比较大的viewport视

bootstrap+flask写登录页面

flask是一个很小巧很方便的webframe,之前一直用django现在用尝试用flask感觉不错,准备用这个框架开发新的平台,首先就要有用户登录页面,用flask可以这样实现: run.py static templates 前端就用bootstrap展示,login.html <!DOCTYPE html> <html lang="en">   <head>     <meta charset="utf-8">

iOS 注册或登录页面(UILable,UITextField,UIButton)

注册或登录页面 如下图 1,这里为了展现UITextField的文本框关联键盘的设置,这里把"密码"和"确定密码"的关联键盘都设置为数字键盘,实际应用中密码一般都允许为数字或字母. 2,实现了键盘收回操作. 3,这里没有写对"用户名"进行特殊字符过滤的代码. 实现代码: #import "ViewController.h" @interface ViewController () @end @implementation Vi

django -- 登录验证

django -- 登录验证 环境说明 Django:1.10 Python:3.6 以 AbstractUser 方式扩展内置 User # models.py 定义 model from django.db import models from django.contrib.auth.models import AbstractUser # Create your models here. class UserProfile(AbstractUser): # 昵称 nick_name = m

Django 登录检查-自动重定向到登录页

编写一个Mixin类 from django.contrib.auth.decorators import login_required from django.utils.decorators import method_decorator class LoginRequiredMixin(object): """ 登录验证:如果未登录,自动重定向到登录页面 """ @method_decorator(login_required(login_

spring-security 个性化用户认证流程——自定义登录页面(可配置)

1.定义自己的登录页面我们需要根据自己的业务系统构建自己的登录页面以及登录成功.失败处理在spring security提供给我的登录页面中,只有用户名.密码框,而自带的登录成功页面是空白页面(可以重定向之前请求的路径中),而登录失败时也只是提示用户被锁定.过期等信息. 在实际的开发中,则需要更精细力度的登录控制,记录错误的日志(错误的次数等) 2.自定义登录页面 配置登录页面的路径在BrowserSecurityConfig类中配置登录页面的路径 http.formLogin() .login

4.项目首页、显示登录页面

首页 轮播图 admin站点配置支持图片上传 下载pillow 模块 pip install Pillow 默认情况下,Django会将上传的图片保存在本地服务器上,需要配置保存的路径. 我们可以将上传的文件保存在静态文件static目录中,添加如下上传保存目录信息. 1.把app 目录设置为环境变量中的导包路径(settings.py 中) # 把apps目录设置环境变量中的导包路径 sys.path.append( os.path.join(BASE_DIR,"luf/apps")