他有一个默认的算法转换成字符串
在浏览器中请求一个url,浏览器会对这个url进行一个编码。除英文字母,数字和部分标记外,其他的全部使用百分号+十六进制码值进行编码
flask简介
flask是一款非常风行的python web框架,flask能如此风行的原因可以分为以下几点:
微框架、简洁、只做他需要做的,给开发供给了很大的扩展性
Flask和相关的依赖设计得非常优秀,用起来很爽
开发效率非常高,好比使用SQLAlchemy的ORM操纵数据库可以节省开发者大量书写sql的时间
社会活跃度非常高
Flask的灵活度非常之高,他不会帮你做太多的决策,即使已经帮你做出选择,你也能非常容易的改换成你需要的,好比:
使用Flask开发数据库的时候,具体是使用SQLAlchemy还是MongoEngine或者是不用ORM而直接基于MySQL-Python这样的底层驱动进行开发都是可以的,选择权完全掌握再你本身手中。区别于Django,Django内置了非常完善和丰富的成果,并且如果你想替换成你本身想要的,要么不撑持,要么非常麻烦
把默认的Jinija2模板引擎替换成Mako引擎或者是其他模板引擎都长短常容易的
debug条记
为什么需要开启DEBUG模式:
如果开启了DEBUG模式,那么再代码中如果抛出了异常,再浏览器的页面中可以看到具体的错误信息,便利开发者调式
如果开启了DEBUG模式,那么以后再python代码中改削了任何代码,只要按‘ctrl+s‘,‘flask‘就会自动的从头记载整个网站。不需要手动点击从头运行
配置DEBUG模式的四种方法
在‘app.run()‘中通报一个参数‘debug=True‘ 就可以开启‘DEBUG‘模式
给‘app.debug‘ = True 也可以开启‘debug‘模式
通过配置参数的形式设置DEBUG模式:‘app.config.update(DEBUG=True)‘
通过配置文件的形式设置DEBUG模式 ‘app.config.from_object(config)‘
PIN码
如果想要在网页上调式代码,那么应该输入‘PIN码‘
config条记:
使用‘app.config.from_object‘的方法加载配置文件:
1.导入import config
2.使用app.config.from_object(config)
使用app.config.from_pyfile的方法加载配置文件
这种方法不需要import,直接使用‘app.config.from_pyfile(‘config.py‘)就可以了
注意这个处所,必需要写文件的全名,后缀名不能少
1.这种方法,加载配置文件,不局限于只能使用‘py‘文件,普通的‘txt‘文件同样也适合
2.这种方法,可以通报‘silent=True‘,那么这个静态文件没有找到的时候,不会抛出异常
URL与函数的映射:
从之前的helloworld.py文件中,我们已经看到,一个URL要与执行函数进行映射,使用的是@app.route装饰器。@app.route装饰器中,可以指定URL的法则来进行越发详细的映射,好比此刻要映射一个文章详情的URL,文件详情的URL是/article/id/,id有可能为1、2、3....那么可以通过以下方法:
通报参数的语法是: ‘/< 参数名>/‘ .然后再视图函数中,也要界说同名的参数
@app.route(‘/article/< id>/‘)
def article(id):
return ‘%s article detail‘ %id
此中< id>,尖括号是固定写法,语法为< variable_name>,variable_name默认的数据类型是字符串。如果需要指定类型,则要写成< converter:variable_name>,此中converter就是类型 名称,可以有以下几种
string:默认的数据类型,接受没有任何斜杆‘\/‘的文本
int:接受整型
float:接受浮点类型
path:和string的类似,但是接受斜杆
uuid:只能接受uuid字符串 uuid是一个全宇宙都独一的字符串,一般可以用来作为表的主键
any:可以指定多种路径,这个通过一个列子来进行说明:
@app.route(‘/< any(article,blog):url_path>/‘) def item(url_path): return url_pth
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/32236.html