Flask web开发之路二
今天创建第一个flask项目,主app文件代码如下:
# 从flask这个框架导入Flask这个类
from flask import Flask
#初始化一个Flask对象
# Flasks()
# 需要传递一个参数__name__
# 1. 方便flask框架去寻找资源
# 2. 方便flask插件比如Flask-Sqlalchemy出现错误的时候,好去寻找问题所在的位置
app = Flask(__name__) # @app.route是一个装饰器
# @开头,并且在函数的的上面,说明是装饰器,这个装饰器的作用,是做一个url与视图的映射
# 127.0.0.1:5000/ -> 去请求hello_world这个函数,然后将结果返回给浏览器
@app.route('/')
def hello_world():
return 'Hello World!' # 如果当前这个文件是作为入口程序运行,那么就运行app.run()
if __name__ == '__main__':
# app.run()
# 启动一个应用服务器,来接受用户的请求
# while True:
# listen()
app.run()
需要注意的地方:
### 第一个flask程序讲解:
1.第一次创建项目时,要添加flask的虚拟环境。添加虚拟环境的时候,一定要选择到python这个执行文件,比如我计算机里的路径是D:\Postgraduate\Python\Virtualenv\flask-env\Scripts\python.exe
### 设置debug模式
1.在app.run()中传入一个关键字参数debug,app.run(debug=True),就设置当前项目为debug模式
2.debug模式的两大功能:
*当程序出现问题的时候,就可以在页面中看到错误信息和出错的位置
*只要修改了项目中的'python'文件,程序会自动加载,不需要手动重启
### 使用配置文件
1.新建一个'config.py'文件
2.在主app文件中导入这个文件,并且添加配置到'app'中,示例代码如下:
'''
import config
app.config.from_object(config)
'''
3.还有许多其他的参数,都是放在这个配置文件中,比如'SECRET_KEY'和'SQLALCHEMY'
这个时候项目目录如下:

主app文件debug_model.py代码如下:
from flask import Flask
import config app = Flask(__name__)
app.config.from_object(config) @app.route('/')
def hello_world():
return '我是' if __name__ == '__main__':
app.run()
配置文件config.py代码如下:
DEBUG = True
开启项目

如果不设置debug模式,是不会有Debugger出现的
Flask web开发之路二的更多相关文章
- Flask web开发之路十二
ge请求和post请求 ### get请求和post请求:1. get请求: * 使用场景:如果只对服务器获取数据,并没有对服务器产生任何影响,那么这时候使用get请求. * 传参:get请求传参是放 ...
- Flask web开发之路九
flask_scripts介绍 项目结构如下: flask_script_demo.py文件: from flask import Flask app = Flask(__name__) @app.r ...
- Flask web开发之路一
之前学过一段时间的flask,感觉还是挺好用的,自己的专利挖掘项目也想这个web框架来搭建,于是重新开始基础学习 环境:win10,python3.6,pycharm2017,虚拟环境virtuale ...
- Flask web开发之路十四
今天开始Flask的实战,创建一个项目,实现包括用户登录.注册.注销.发表博客.评论以及检索等功能 首先给出项目结构: 1.config.py文件: 存放各种配置信息 import os # dial ...
- Flask web开发之路十三
g对象 ### 保存全局变量的g属性:g:global1. g对象是专门用来保存用户的数据的.2. g对象在一次请求中的所有的代码的地方,都是可以使用的. 项目结构: g_demo.py文件代码: f ...
- Flask web开发之路十一
首先写一下cookie和session的概念,然后是Flask中session的工作机制以及操作session ### cookie: 1. `cookie`出现的原因:在网站中,http请求是无状态 ...
- Flask web开发之路十
首先介绍循环引用的问题: 当一个模块需要引用另一个模块的类,而另一个模块又需要引用这个模块的类时,就出现了循环引用,而没法导入类,这时候可以切断其中一条引用路径,增加一个模块 项目结构: models ...
- Flask web开发之路八
今天写Flask_SQLAlchemy的外键及其关系 ### Flask-SQLAlchemy外键及其关系: 主app文件代码: from flask import Flask from flask_ ...
- Flask web开发之路七
今天写SQLAlchemy数据库 首先介绍ORM的概念: ORM,Object类,Relationship:关系,Mapping:映射,也就是模型关系映射 flask-sqlalchemy是一套ORM ...
随机推荐
- python emoji 表情过滤
http://my.oschina.net/jiemachina/blog/189460 注意替换的这些emoji是标准的表情字符,每个表情本来是2个字节,替换成字符串后,每个表情就变成12个字符了, ...
- SQLSERVER 2012 之 “代理 XP”组件已作为此服务器安全配置的一部分被关闭
新建维护计划的时候遇到下图的报错信息 标题: Microsoft SQL Server Management Studio ------------------------------ “代理 XP” ...
- Git tag 标签操作
列表 # 列出已有的标签 $ git tag # 为了能及时看到远程上新增的标签, 在上面的命令之前可以fetch一下 git fetch --all --tags --prune # 列出匹配的部分 ...
- 【PHP】php生成一个不重复的数字(订单号、会员号)
1.目的:利用php的do .. while 生成一个不重复的字符串或者数组,比如(订单号.会员号) 2.不废话,代码来: $repeat_order = array(); do{ $ordersn ...
- Kriging插值法
克里金法是通过一组具有 z 值的分散点生成估计表面的高级地统计过程.与插值工具集中的其他插值方法不同,选择用于生成输出表面的最佳估算方法之前,有效使用克里金法工具涉及 z 值表示的现象的空间行为的交互 ...
- PHP——自定义比较算法
很多时候,程序都是直接写好逻辑运算,提供给用户的是一个值,然后后台去比较:但是有时会提供一种类似计算器一样的交互方式的时候,PHP只能读懂用户的输入来进行比较了- 最近的一个项目涉及到一个由用户自定义 ...
- 译: 5. RabbitMQ Spring AMQP 之 Topic 主题
在上一个教程中,我们提高了消息传递的灵活 我们使用direct交换而不是使用仅能够进行虚拟广播的fanout交换, 并且获得了基于路由key 有选择地接收消息的可能性. 虽然使用direct 交换改进 ...
- [svc]HTTPS证书生成原理和部署细节
参考: http://www.barretlee.com/blog/2015/10/05/how-to-build-a-https-server/ 今天摸索了下 HTTPS 的证书生成,以及它在 Ng ...
- MemoryFile偷取安卓内存
参考链接:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2016/0111/3859.html MemoryFile memoryFile ...
- Linux x64系统上安装 oracle 11g R2 x64
1.首先到官网上下载oracle 11g x64位软件包 下载地址: http://download.oracle.com/otn/linux/oracle11g/R2/linux.x64_11gR2 ...