1. 10行代码的迷你程序 flask项目

from flask import  Flask

app = Flask(__name__)

@app.route("/index")
def inde():
return "heeello world" if __name__ =="__main__":
app.run()

  

2.页面登录的小程序+session简单用法.


from flask import  Flask,render_template,request,redirect,session

app = Flask(__name__)
app.secret_key="dd" @app.route("/login",methods =["GET","POST"])
def login():
if request.method =='GET': return render_template("login.html") #request.form为post请求
user =request.form.get("user")
pwd =request.form.get("pwd")
if user =="hailong" and pwd =="kuang": #设置session , flask的session存放在cookie当中
session["user_infor"]=user
print(22)
return redirect("/index")
print(111)
return render_template("login.htm",msg ="用户密码错误") @app.route("/index")
def index(): #获取cookie 判断是否存在,如果存在并匹配进行跳转到相关页面
user_infor =session.get("user_infor")
print(222,user_infor)
if not user_infor:
return redirect("/login")
return render_template("index.html") if __name__ =="__main__":
app.run()
 

login页面

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>login</title> </head>
</head>
<body>
<h1> 用户登录</h1>
<form method="post">
<input type="text" name ="user">
<input type="password" name ="pwd">
<input type="submit" value="提交">{{msg}} </form>
</body>
</html>

index界面

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>欢迎来到郝龙江家里</h1>
</body>
</html>

3 .auth认证.

 from flask import Flask,render_template,request,redirect,session

 app = Flask(__name__)

 app.secret_key = '39jrlasdfoajslfu8af'

 import functools

 def auth(func):
@functools.wraps(func) # 保留函数的元信息
def inner(*args,**kwargs):
if not session.get('user_info'):
return redirect('/login')
ret = func(*args,**kwargs)
return ret
return inner @app.route('/login',methods=['GET','POST'])
def login():
if request.method == 'GET':
return render_template('login.html') user = request.form.get('user')
pwd = request.form.get('pwd')
if user == 'hailong' and pwd == 'kuang':
session['user_info'] = user
return redirect('/index')
return render_template('login.html',msg="用户名或密码错误") @app.route('/index')
@auth
def index():
kuang_list = [
{'id':1,'name':'一矿','address':'大同'},
{'id':2,'name':'二矿','address':'大同'},
{'id':3,'name':'三矿','address':'大同'},
] return render_template('index.html',klist=kuang_list)
# return render_template('index.html',**{'klist':kuang_list}) @app.route('/detail')
@auth
def detail():
nid = request.args.get('nid')
return render_template('detail.html') @app.route('/logout')
def logout():
del session['user_info'] return redirect('/login') if __name__ == '__main__':
app.run()

4.中间件

 from flask import Flask,render_template,request,redirect,session

 app = Flask(__name__)

 app.secret_key = '39jrlasdfoajslfu8af'

 @app.before_request
def xxxxxxxxxxxxxx():
if request.path == '/login':
return None if not session.get('user_info'):
return redirect('/login') @app.route('/login',methods=['GET','POST'])
def login():
print('我是login')
if request.method == 'GET':
return render_template('login.html') user = request.form.get('user')
pwd = request.form.get('pwd')
if user == 'hailong' and pwd == 'kuang':
session['user_info'] = user
return redirect('/index')
return render_template('login.html',msg="用户名或密码错误") @app.route('/index')
def index():
print('我是index')
kuang_list = [
{'id':1,'name':'一矿','address':'大同'},
{'id':2,'name':'二矿','address':'大同'},
{'id':3,'name':'三矿','address':'大同'},
] return render_template('index.html',klist=kuang_list)
# return render_template('index.html',**{'klist':kuang_list}) @app.route('/detail')
def detail():
nid = request.args.get('nid')
return render_template('detail.html') @app.route('/logout')
def logout():
del session['user_info'] return redirect('/login') if __name__ == '__main__':
app.run()

Flask基础-基础实例的更多相关文章

  1. 超实用的Flask入门基础教程,新手必备!

    Flask入门基础教程 Flask简介 Flask是一个轻量级的可定制框架,使用Python语言编写,较其他同类型框架更为灵活.轻便.安全且容易上手.它可以很好地结合MVC模式进行开发,开发人员分工合 ...

  2. AutoCAD ObjectARX(VC)开发基础与实例教程2014版光盘镜像

    AutoCAD ObjectARX(VC)开发基础与实例教程2014,最新版,光盘镜像 作者:张帆 朱文俊 编著 出版社:中国电力出版社 出版时间:2014年6月 点击一下

  3. 基础 jQuery 实例

    基础 jQuery 实例 jQuery 原则: 由于 jQuery 是为处理 HTML 事件而特别设计的,那么当您遵循以下原则时,您的代码会更恰当且更易维护: 把所有 jQuery 代码置于事件处理函 ...

  4. 知了课堂 Python Flask零基础 笔记整理

    目录 起步 安装Python2.7: Python虚拟环境介绍与安装: pip安装flask: 认识url: URL详解 web服务器和应用服务器以及web应用框架: Flask 第一个flask程序 ...

  5. expect基础及实例

    expect基础及实例 http://blog.csdn.net/zhuying_linux/article/details/6900805

  6. SVG基础绘图实例

    SVG可缩放矢量图(Scalable Vector Graphics),是使用 XML 来描述二维图形和绘图程序的语言,图像在放大或改变尺寸的情况下其图形质量不会有所损失,是万维网联盟的标准. 下面整 ...

  7. flask之基础概念

    [应用]一个 Flask 应用是一个 Flask 类的实例.可以在一个被称为应用工厂的函数内部创建 Flask实例.所有应用相关的配置.注册和其他设置都会在函数内部完成,然后返回这个应用.__init ...

  8. python基础-基础知识(包括:函数递归等知识)

    老男孩 Python 基础知识练习(三) 1.列举布尔值为 False 的值空,None,0, False, ", [], {}, () 2.写函数:根据范围获取其中 3 和 7 整除的所有 ...

  9. 2、flask之基础知识点

    本篇导航: 路由系统 视图函数 请求与响应 模版语法 session 蓝图(blueprint).闪现 (flash) 扩展 一.路由系统 1.可传入参数: @app.route('/user/< ...

随机推荐

  1. SVN的标准目录结构:trunk、branches、tags

    原文链接:http://techlife.blog.51cto.com/212583/223704/ 我们在一些著名开源项目的版本库中,通常可以看到trunk, branches, tags等三个目录 ...

  2. resin-pro-4.0.53报错java.lang.Error: java.lang.ClassNotFoundException: com.caucho.loader.SystemClassLoader

    最初并未发现,笔者的系统环境变量JAVA_HOME变量设置错误 D:\develop\Java\x64\jdk1.8.0_144 #最初使用了阉割版的JDK 改成完整安装的JDK就可以 D:\deve ...

  3. Luugu 3084 [USACO13OPEN]照片Photo

    很神仙的dp...假装自己看懂了,以后回来复习复习... 设$f_{i}$表示从$1$到$i$,且$i$这个点必放的最大数量. 一个区间有两个限制条件:至少放一个,至多放一个. 因为一个区间至多要放一 ...

  4. [BAT] xcopy拷贝远程服务器共享文件到本地

    net use * /del /yes NET USE Y: \\10.86.17.243\d$ Autotest123 /user:MSDOMAIN1\doautotester set source ...

  5. kafka系列 -- 基础概念

    kafka是一个分布式的.分区化.可复制提交的发布订阅消息系统 传统的消息传递方法包括两种: 排队:在队列中,一组用户可以从服务器中读取消息,每条消息都发送给其中一个人. 发布-订阅:在这个模型中,消 ...

  6. 2018.10.19 NOIP模拟 加密(模拟)

    传送门 直接按hashhashhash函数反着算回去就行了. 加法用exgcdexgcdexgcd,异或直接枚举二进制位. 代码

  7. Nginx的两种负载均衡搭建(Tomcat版)

    前言 Nginx的负载均衡一般采用upstream来实现,但是,还有另一种文件拓展的方式,同样可以实现负载均衡. 一.一般的负载均衡 upstream my_server { server local ...

  8. (欧拉公式 很水) Coprimes -- sgu -- 1002

    链接: http://vj.acmclub.cn/contest/view.action?cid=168#problem/B Coprimes 时限:250MS     内存:4096KB     6 ...

  9. (dp)Tickets --HDU --1260

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=1260 http://acm.hust.edu.cn/vjudge/contest/view.action ...

  10. REST格式

    首先要明确一点:REST 实际上只是一种设计风格,它并不是标准.(所以你可以看到网上一大堆的各种最佳实践,设计指南,但是没有人说设计标准).aisuhua/restful-api-design-ref ...