bootstrap flask登录页面编写实例


Posted in Javascript onNovember 01, 2016

本文章来为各位介绍一个python的例子,这个就是bootstrap+flask写登录页面的例子,希望文章能够对各位有所帮助。

Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。在一般应用或个人开发中,可以很容易的写出应用。本篇就结合bootstrap,写一个简单的login界面。

一、效果图

无图无真像,先上效果图:

 bootstrap flask登录页面编写实例

flask-bootstrap

bootstrap flask登录页面编写实例

flask-login

二、目录结构

该代码写时采用动静分离的方法进行编写,目录树如下:

[root@3water login]# tree
.
├── run.py
├── static
│   └── css
│       ├── bootstrap.min.css
│       └── style.css
└── templates
    ├── index.html
    └── login.html

三、入口run文件

动态代码只有一个run.py文件,代码如下:

from flask import *
app = Flask(__name__,static_url_path='/static')
@app.route("/login",methods=['POST','GET'])
def login():
 error = None
 if request.method == 'POST':
 if request.form['username'] != 'admin' or request.form['password'] != 'admin123':
  error= "sorry"
 else:
  return redirect(url_for('index'))
 return render_template('login.html',error=error)
@app.route("/index")
def index():
 return render_template('index.html')
if __name__ == "__main__":
 app.run(
 host="0.0.0.0",
 port=80,
 debug=True)

实际应用中,根据需要,可以关闭debug模试。

四、静态模块

templates下有两个模块文件分别是login.html和index.html

login.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1.0" />
<title>Bootstrap响应式登录界面模板</title>
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/bootstrap.min.css') }}">
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/style.css') }}">
</head>
<body>
<div class="box">
<div class="login-box">
<div class="login-title text-center">
<h1><small>登录</small></h1>
</div>
<div class="login-content ">
<div class="form">
<form action="#" method="post">
<div class="form-group">
 <div class="col-xs-12 ">
  <div class="input-group">
   <span class="input-group-addon"><span class="glyphicon glyphicon-user"></span></span>
   <input type="text" id="username" name="username" class="form-control" placeholder="用户名">
  </div>
 </div>
</div>
<div class="form-group">
 <div class="col-xs-12 ">
  <div class="input-group">
   <span class="input-group-addon"><span class="glyphicon glyphicon-lock"></span></span>
   <input type="text" id="password" name="password" class="form-control" placeholder="密码">
  </div>
 </div>
</div>
<div class="form-group form-actions">
 <div class="col-xs-4 col-xs-offset-4 ">
  <button type="submit" class="btn btn-sm btn-info"><span class="glyphicon glyphicon-off"></span> 登录</button>
 </div>
</div>
<div class="form-group">
 <div class="col-xs-6 link">
  <p class="text-center remove-margin"><small>忘记密码?</small> <a href="javascript:void(0)" ><small>找回</small></a>
  </p>
 </div>
 <div class="col-xs-6 link">
  <p class="text-center remove-margin"><small>还没注册?</small> <a href="javascript:void(0)" ><small>注册</small></a>
  </p>
 </div>
</div>
</form>
</div>
</div>
</div>
</div>
<div style="text-align:center;"><p>来源:<a href="https://3water.com/" target="_blank">运维之路</a></p></div>
</body>
</html>

index.html
index.html 模板中内容如下:

<h1>welcome to 3water.com/ <h1>

如果大家还想深入学习,可以点击这里进行学习,再为大家附两个精彩的专题:Bootstrap学习教程 Bootstrap实战教程

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript之自定义类型
May 04 Javascript
Extjs 继承Ext.data.Store不起作用原因分析及解决
Apr 15 Javascript
JavaScript实现添加、查找、删除元素
Jul 02 Javascript
javascript之Boolean类型对象
Jun 07 Javascript
jQuery处理XML文件的几种方法
Jun 14 Javascript
JavaScript下拉菜单功能实例代码
Mar 01 Javascript
jQuery实现的背景颜色渐变动画效果示例
Mar 24 jQuery
javascript计算对象长度的方法
Oct 25 Javascript
Vue2 SSR渲染根据不同页面修改 meta
Nov 20 Javascript
jQuery EasyUI 折叠面板accordion的使用实例(分享)
Dec 25 jQuery
使用Angular CLI进行Build(构建)和Serve详解
Mar 24 Javascript
js实现网页同时进行多个倒计时功能
Feb 25 Javascript
JS弹出窗口的运用与技巧大全
Nov 01 #Javascript
Bootstrap树形菜单插件TreeView.js使用方法详解
Nov 01 #Javascript
JS实现快速的导航下拉菜单动画效果附源码下载
Nov 01 #Javascript
AngularJS入门教程之数据绑定用法示例
Nov 01 #Javascript
jQuery动态生成Bootstrap表格
Nov 01 #Javascript
AngularJs入门教程之环境搭建+创建应用示例
Nov 01 #Javascript
jQuery双向列表选择器select版
Nov 01 #Javascript
You might like
2020年4月放送!《Princess Connect Re:Dive》制作组 & 角色声优公开!
2020/03/06 日漫
点评山进PR-D3L三波段收音机
2021/03/02 无线电
php 安全过滤函数代码
2011/05/07 PHP
php实现高效获取图片尺寸的方法
2014/12/12 PHP
smarty模板引擎之分配数据类型
2015/03/30 PHP
php使用curl打开https网站的方法
2015/06/17 PHP
JavaScript 异步方法队列链实现代码分析
2010/06/05 Javascript
jQuery的实现原理的模拟代码 -3 事件处理
2010/08/03 Javascript
jquery 设置style:display的方法
2015/01/29 Javascript
jQuery使用经验小技巧(推荐)
2016/05/31 Javascript
Web打印解决方案之证件套打的实现思路
2016/08/29 Javascript
jQuery事件对象总结
2016/10/17 Javascript
基于JavaScript实现下拉列表左右移动代码
2017/02/07 Javascript
详解Vue中使用v-for语句抛出错误的解决方案
2017/05/04 Javascript
利用require.js与angular搭建spa应用的方法实例
2017/07/19 Javascript
JS实现前端页面的搜索功能
2018/06/12 Javascript
JQuery animate动画应用示例
2019/05/14 jQuery
VUE子组件向父组件传值详解(含传多值及添加额外参数场景)
2020/09/01 Javascript
详解JavaScript中的数据类型,以及检测数据类型的方法
2020/09/17 Javascript
解决vue下载后台传过来的乱码流的问题
2020/12/05 Vue.js
[01:40]2014DOTA2国际邀请赛 三冰SOLO赛后采访恶搞
2014/07/09 DOTA
深入理解Python中装饰器的用法
2016/06/28 Python
Python heapq使用详解及实例代码
2017/01/25 Python
解决新django中的path不能使用正则表达式的问题
2018/12/18 Python
python 通过可变参数计算n个数的乘积方法
2019/06/13 Python
python实现简单图书管理系统
2019/11/22 Python
解决python中0x80072ee2错误的方法
2020/07/19 Python
基于logstash实现日志文件同步elasticsearch
2020/08/06 Python
MADE法国:提供原创设计师家具
2018/09/18 全球购物
Engel & Bengel官网:婴儿推车、儿童房家具和婴儿设备
2019/12/28 全球购物
武汉世纪畅想数字传播有限公司.NET笔试题
2014/07/22 面试题
《白鹅》教学反思
2014/04/13 职场文书
三方股东合作协议书范本
2014/09/28 职场文书
党员群众路线个人整改措施思想汇报
2014/10/12 职场文书
Python3 使用pip安装git并获取Yahoo金融数据的操作
2021/04/08 Python
springboot用户数据修改的详细实现
2022/04/06 Java/Android