Flsak学习笔记(1)

Day 01

最近项目里要用python写后端,同学推荐了flask框架就来学一学。写这个博客的目的主要是记录一下自己学习的内容,有基础知识忘了不用一个个去百度,还有就是跟大家分享一下,有不是很容易理解的地方可以评论留言,学新东西就是这样,学会的觉得不说也能理解,但刚接触的人就完全没这种感觉。这里IDE不是很推荐用社区版,因为专业版可以直接选择新建flask项目,自动生成基础的项目框架(虽然影响也不是很大)。

过年在家学习效率真是低,废话说了一大堆,还是记点学习内容,顺带祝大家新年快乐。

开启debug的四种模式

  1. app.run(debug=True)

  2. app.debug=True

  3. app.config.update(DEBUG=True)

  4. 使用配置文件的两种方法: (需要新建一个config.py文件)

    1.使用import导入后,使用app.config.from_object( config )

    2.app.config.from_pyfile('file_name',silent=False),无需import,文件格式可以是.py,也可以是.txt等,silent=False时若文件不存在会报错

传递参数

@app.route('/path/<type:arg>/')
#type:int,float,string,path,uuid,any...
def fun(arg):
   pass

 

每个app.route代表一个视图,若有变量需要放在<>里,变量可以通过 “类型:变量名” 显式指定类型

string类型只能接受不含 \ / 的字符串

path可以接受包含 \ / 的字符串

any可以指定多种路径

#example for any:
@app.route('/<any(blog,user):url_path>/<id>')
#../blog/1
#../user/1
#都可以访问
def fun(url_path,id):
   if url_path == 'blog':
       return 'blog detail'
   else:
       return 'user detail'

如果有不确定的参数,可以通过问号传递参数。多个参数间使用 & 符号连接。

 

#../d/?wd=...
@app.route('/d/')
def fun():
   arg = request.args.get('arg_name')
   return '你查找的参数是 %s' %arg

 

url_for函数是一个非常常用的函数,它的功能是返回一个视图对应的path。

使用方法为: url_for('endpoint',**value=),注意,这里endpoint对应的是视图函数的函数名,不要看名字理解成路径的结束标志,比如想返回上一个‘/d/’的路径,endpoint对应的是'fun'而不是'd'

它的好处是,在endpoint对应的path发生更改时可以不用逐一 查找更改

#example
@app.route('/page/<string:pg>')
def page(pg):
   return pg
@app.route('/')
def home_page():
   return 'URL for page1 is '+url_for('page',pg='page1')

猜你喜欢

转载自www.cnblogs.com/Ishtarin/p/12232439.html