初学Flask(1)
今天在学习Flask,边看官方文档一边动手运行例子,以注释的形式写了一些笔记,分享给大家。
Flask官方文档,快速入门:
ex1:
#coding:utf-8
#######################
# 1.URL的解析
###################### from flask import Flask
app = Flask(__name__) @app.route('/a')
#这里是用于测试笔记2的
def a():
return 'test a' @app.route('/user/<username>')
def show_user_profile(username):
# show the user profile(简介) for that user
# 可以接收url传递的变量
return 'User %s' % username @app.route('/post/<int:post_id>')
def show_post(post_id):
# show the post with the given id, the id is an integer
# 在地址后面加/post/211654,页面显示Post 211654
return 'Post %d' % post_id @app.route('/hello') #修饰url
def hello_world():
return 'Test debug' @app.route('/')
def index():
return 'Index Page' if __name__ == '__main__':
app.debug = True # 作用是修改完文件,服务器自动重启
app.run(host = '0.0.0.0') # 笔记:
# 1.route(线路)——传入线路(url)触发route下面的方法
# 2.注意区别
# route('/a/')和route('/a') 系统不管是'/a/'还是'/a'
# 都会为其自动增加'/','/a/'正常运行,'/a'报错!
#
ex2:
#coding:utf-8
#######################
# 2.URL的构建
###################### # url_for()函数是用来构建指定函数的URL
from flask import Flask, url_for
app = Flask(__name__) @app.route('/')
def index():
pass @app.route('/login')
def login():
pass @app.route('/user/<username>')
def profile(username):
pass # 告诉 Flask 我们正在处理一个请求,而实际上也许我们
# 正处在交互 Python shell 之中,并没有真正的请求(后面再说)
with app.test_request_context():
print url_for('index')
print url_for('login')
print url_for('login', next='/')
print url_for('profile', username='Xue Wei Han') #为什么不在把 URL 写死在模板中,反而要动态构建?有三个很好的理由: # 1.反向解析通常比硬编码 URL 更直观。同时,更重要的是你可以只在一个地方改变 URL ,而不用到处乱找。
# 2.URL 创建会为你处理特殊字符的转义和 Unicode 数据,不用你操心。
# 3.如果你的应用是放在 URL 根路径之外的地方(如在 /myapplication 中,不在 / 中)
# url_for() 会为你妥善处理。
初学Flask(1)的更多相关文章
- 在初学Flask中遇到的小问题。
今天初步认识到了Flask这个轻量级web开发框架.对于初步认识框架的我,暂时的有了一个小小的认识, 因为初学.也没有什么代码可供参开.一下的就是一个小小的例子. # 导包from flask imp ...
- Flask+mongodb 实现简易个人博客
最近学习完了<flask-web开发>,实现了一个简易的个人博客网站,由flask+mongodb+bootstrap做成, 这个软件是在阅读<Flask-Web开发>后写的一 ...
- 写给新手看的Flask+uwsgi+Nginx+Ubuntu部署教程
学习 Flask,写完一个 Flask 应用需要部署的时候,就想着折腾自己的服务器.根据搜索的教程照做,对于原理一知半解,磕磕碰碰,只要运行起来了,谢天谢地然后不再折腾了,到下一次还需要部署时,这样的 ...
- 《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(上)
目录 前言 第1章 安装 第2章 程序的基本结构 第3章 模板 第4章 Web表单 第5章 数据库 第6章 电子邮件 第7章 大型程序的结构 前言 学习Python也有一个半月时间了,学到现在感觉 ...
- Flask连接数据库打怪升级之旅
一.前言 在初学 Flask 的时候,在数据库连接这部分也跟每个初学者一样.但是随着工作中项目接手的多了,代码写的多了,历练的多了也就有了自己的经验和技巧.在对这块儿代码不断的进行升级改造后,整理了在 ...
- flask入门与发送邮件与QQ邮箱
前言: 快两个月没写博客了, 原因是懒了, 没有最初写博客那种看到阅读量上涨, 别人给自己文章点赞后的开心. 心态也发生了不少变化. 有机会再来写写. 前两个月我去厦门某公司实习, 本着去厦门玩一玩还 ...
- Flask(2)- 装饰器的坑及解决办法、flask中的路由/实例化配置/对象配置/蓝图/特殊装饰器(中间件、重定义错误页面)
一.装饰器的坑以及解决方法 1.使用装饰器装饰两个视图函数,代码如下 from flask import Flask, redirect, render_template, request, sess ...
- Flask&&人工智能AI --2
参考博客: https://www.cnblogs.com/xiao987334176/p/9598606.html 昨日作业讲解 昨天的作业就是,有3个视图函数,分别是/login,/student ...
- 一个Flask应用运行过程剖析
相信很多初学Flask的同学(包括我自己),在阅读官方文档或者Flask的学习资料时,对于它的认识是从以下的一段代码开始的: from flask import Flask app = Flask(_ ...
随机推荐
- visual webgui theme designer
- Marza Gift for GDC 2016
这个帖子还是用中文写了,主要是面向国内. 这是一个趋势,就是基于UE.Unity这些日趋完善的游戏引擎以及编辑器制作便宜的3D动画.国内有<超黑学院>这种为代表,还有其他许多国漫,勉强能耐 ...
- spring整合activemq发送MQ消息[queue模式]实例
queue类型消息 pom依赖 <dependency> <groupId>junit</groupId> <artifactId>junit</ ...
- [Scheme]一个Scheme的Metacircular evaluator
这个解释器可以用来跑前面两篇文章的例子,所以一并扔出来,三部曲哈哈. Lisp内置的S-expression相当于解析好的语法树,而借助quasiquote和unquote又很容易进行语法树层面的变换 ...
- Difference between SET, SETQ and SETF in LISP
SET can set the value of symbols; SETQ can set the value of variables; SETF is a macro that will ...
- Oracle 数据同步系列--触发器
现在随着项目集成的越来越深入,异构的数据多起来,数据同步的场景也用的多起来,我甚至在考虑是否忽悠用户上Oracle GoldenGate了,这样就可以不用考虑采用哪种同步方案了. 简单的介绍一下我们数 ...
- FMDB 版本迁移
FMDB 版本迁移 安装 1. 通过CocoaPods 在项目根目录创建并编辑 Podfile 内容如下 $ cd /path/to/MyProject $ touch Podfile $ edit ...
- AppStore 相关
App 跳转 AppStore 网址链接 https://itunes.apple.com/app/uri/id582319843?mt=8 https 可替换成 itms,可直接避免进入 S ...
- Linux64位服务器编译安装MySQL5.6(CentOS6.4)
首先到MySQL官网下载MySQL最新版(目前是mysql-5.6.12)上传到服务器上,下面说一下详细的安装过程. 安装依赖包,可以在线更新也可以配置本地源(CentOS本地源配置)yum -y i ...
- data-role参数表:
data-role参数表: page 页面容器,其内部的mobile元素将会继承这个容器上所设置的属性 header 页面标题容器,这个容器内部可以包含文字.返回按钮.功能按钮等 ...