1.程序基本的说明

#-*-encoding=utf--*-
从flask中引入类
from flask import Flask ,render_template
import config
初始化一个flask对象 Flask(),需要传入一个参数_name_
.方便flask寻找寻找资源
.方便flask插件,比如Flask Sqlalcheny出现错误的时候,好去寻找问题所在的位置
app = Flask(__name__)
@开头,并且是在函数上面,说明是一个装饰器
这个装饰器的作用,是做一个url与视图函数的映射相匹配的
比如127.0.0.:/————>去请求一个heloo_world这个项目,额庵后返回给浏览器
@app.route('/')
def hello_world():
return render_template('index.html',username='kanhwang',gender='nan')
如果当前这个文件是作为程序的一个入口程序,那么就执行——app.run()这个方法
if __name__ == '__main__':
app.run()
app.run ()启动一个应用服务器,来接受用户的一个请求
相当于while True:
Listen()
#static:用来存储静态资源的
#tem中放入的数html文件

2.debug模式的开启

  好处:可以修改代码,而不需要重新的加载程序,他会在自己执行ctrl+s之后,自动将程序加载。但是HTML页面是不可以的,在java中也是这样的,但是在java中需要保存,可以不用启动服务器。

  开启方式:

  (1)在主函数的run方法中添加debug==True

  (2)可以使用配置的方法 

Import config
App.config.form_obiect(config)

config中的程序

DEBUG=True

3.url传递参数

 3.1.参数的作用,可以在相同的Url中,指定不同的参数,来加载不同的数据

3.2。在flask中使用参数,

要求:参数必须放在两个括号中,视图中的需要放在url中的参数同名

@app.route('/kw/<id>')              两个括号之间
def kw(id):
return u"你传入的参数是%s" % id 视图中与url中的同名

4.页面渲染

4.1flask建项目的目录说明  static中存放的是css、js等页面的,在template中放置的是页面HTML。

4.2页面渲染的使用案例

from flask import Flask ,render_template
import config
app = Flask(__name__)
@app.route('/')
def hello_world():
return render_template('index.html',username='kangwang',gender='man')
if __name__ == '__main__':
app.run()

页面

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Demo1</title>
</head>
<body>
用户名:{{ username}}
性别:{{ gender }}
</body>
</html>

4.3数据传入

上面的例子中传输参数,在template方法里面,但是如果有太多的页面,这样的传输,不是一个好的办法,那么我们可以使用字典的方式传输值

@app.route('/')
def hello_world():
context={
'username':'kanhwang',
'gender':'nan'
}
return render_template('index.html',**context)

传入类的方式

def hello_world():
class people:
name='kw'
age= p=people()
context = {
'username': 'kanhwang',
'gender': 'nan',
'peo':p
}
return render_template('index.html',**context)

接收端

用户名:{{ peo.name}}
性别:{{ peo.age }}

传输字典的方式

context = {
'username': 'kangwang',
'gender': 'man',
'peo':p,
'websites':{
'baidu':'http://baidu.com',
'hh':'https://i.cnblogs.com/EditPosts.aspx?opt=1'
}
}

接收数据端

{{websites.baidu }}

还有一种方式,使用与字典,也适用于类传递参数

{{websites['baidu'] }}

flask的使用(一)的更多相关文章

  1. flask+sqlite3+echarts2+ajax数据可视化

    前提: 准备Python + Flask+Sqlite3的平台环境(windows系统) 前面一节介绍flask怎么安装了,剩下sqlite3下载后解压,然后环境变量添加解压路径就行了 附加下载地址: ...

  2. flask+sqlite3+echarts2+ajax数据可视化报错:UnicodeDecodeError: 'utf8' codec can't decode byte解决方法

    flask+sqlite3+echarts2+ajax数据可视化报错: UnicodeDecodeError: 'utf8' codec can't decode byte 解决方法: 将 py文件和 ...

  3. Windows下快速安装Flask的一次经历

    前提: 1.已安装python版本(一般都是2.X) 2.已安装easy_install python安装,记得配置Python的环境变量,例如:我的直接在Path上加 G:\Python 验证安装P ...

  4. 使用Flask设计带认证token的RESTful API接口[翻译]

    上一篇文章, 使用python的Flask实现一个RESTful API服务器端  简单地演示了Flask实的现的api服务器,里面提到了因为无状态的原则,没有session cookies,如果访问 ...

  5. 使用python的Flask实现一个RESTful API服务器端[翻译]

    最近这些年,REST已经成为web services和APIs的标准架构,很多APP的架构基本上是使用RESTful的形式了. 本文将会使用python的Flask框架轻松实现一个RESTful的服务 ...

  6. python flask (一)

    from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World ...

  7. flask源码分析

    本flask源码分析不间断更新 而且我分析的源码全是我个人觉得是很beautiful的 1 flask-login 1.1 flask.ext.login.login_required(func),下 ...

  8. Python flask 基于 Flask 提供 RESTful Web 服务

    转载自 http://python.jobbole.com/87118/ 什么是 REST REST 全称是 Representational State Transfer,翻译成中文是『表现层状态转 ...

  9. Python flask @app.route

    转载自 http://python.jobbole.com/80956/ 下面是Flask主页给我们的第一个例子,我们现在就由它入手,深入理解“@app.route()”是如何工作的.         ...

  10. Flask 框架入门

    Flask Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 . 安装 Flask 依赖两个外部库, We ...

随机推荐

  1. es68对象的解构赋值

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. 阿里云Redis使用规范

    一.键值设计 1.key名设计 (1)[建议]: 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id ugc:video:1 (2)[建议]: 简洁性 ...

  3. Istio Service Mash管理微服务

    Istio Service Mash管理微服务 今天的文章通过Istio开源项目展示如何为Kubernetes管理的微服务提供可见性,弹性,安全性和控制. 服务是现代软件体系结构的核心.比起复杂庞大的 ...

  4. hostname---显示和设置系统的主机

    hostname命令用于显示和设置系统的主机名称.环境变量HOSTNAME也保存了当前的主机名.在使用hostname命令设置主机名后,系统并不会永久保存新的主机名,重新启动机器之后还是原来的主机名. ...

  5. nginx配置静态文件服务器的一个特殊需求的探索和分享, nginx处理不同路径返回统一文件,nginx改写,跳转请求.

    最近在做一个前后端分离的个人博客,在做自己博客的时候有个想法,本来是打算用nginx作为静态文件服务器使用,django做后端程序. 我的前端页面用vue写的,结果用组件用嗨了,发现页面列表和 详情都 ...

  6. 阅读笔记—EL表达式

    表达式语言(EL) 表达式语言是一种在JSP页面中使用的数据访问语言,通过它可以很方便地在JSP页面中访问应用程序数据. 使用EL访问数据 表达式语言的使用形式:              ${exp ...

  7. 【习题 8-13 UVA - 10570】Meeting with Aliens

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 枚举1的位置在i 往右摆成一排. a[i+1]..a[n]..a[1]..a[i-1]变为有序的 ->寻找循环节,每个循环节的 ...

  8. 关于oracle sql语句查询时 表名和字段名要加双引號的问题具体解释

      作为oracle的刚開始学习的人相信大家一定会遇到这个问题.如图:          明明就是navicat可视化创建了表,但是就是不能查到!这个为什么呢?           select * ...

  9. 设计模式(7)-结构型模式-Bridge模式

    2.结构性模式 2.2  BRIDGE模式 别名:handle/body 这个模式体现了组合相对于继承的优势. 2.2.1动机 当一个抽象可能有多个实现时,通经常使用继承来协调它们.抽象类定义对该抽象 ...

  10. Makefile 文件格式

    Makefile包含 目标文件.依赖文件.可运行命令三部分. 每部分的基本格式例如以下: test: prog.o  code.o gcc  -o  test   prog.o   code.o 当中 ...