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 ...
随机推荐
- RPC简述
在某种意义上,WebService.REST均是RPC的实现,那么RPC的发展过程如何呢?本文参考了wikipedia,对RPC做一下简要摘记. RPC(RemoteProcedureCall),是进 ...
- WPF的5种绑定模式(mode)
WPF的绑定模式(mode)是枚举的 枚举值共有5个 1:OneWay(源变就更新目标属性) 2:TwoWay(源变就更新目标并且目标变就更新源) 3:OneTime(只根据源来设置目标,以后都不会变 ...
- SpringBoot中配置起动时的数据库初始化角本
一.简介 我们使用SpringBoot + JPA时,需要程序在启动时执行数据表的初始化或者数据库记录的初始化.一般数据表的初始化可以通过在Spring Boot的application.proper ...
- docker 安装hadoop
上一篇文章介绍了一些docker的基本命令,这篇文章来安装一个HADOOP 一.下载hadoop镜像 @~/git/github/docker-ambari (master)$ docker pull ...
- JNI学习小结
Java中类型与C/C++中对应关系 Java中的类的对应 Sign签名, 用来识别对应各个方法. JDK下的javap.exe能输出签名.用法javap -s -p 完整类名 下面是 ...
- <转>vmp3.0.9全保护拆分解析
以下为了避免插件干扰,故采用x64dbg原版进行分析. 首先我通过检测到调试器的弹窗进行栈回溯,定位到该关键点:CALL eax 由于才接触Vmp,所以是把各个保护拆分开来进行的分析,会比较简单一 ...
- oradim新建服务后,登录数据库报ORA-12560错误
> oradim -new -sid mydb 实例已创建. > sqlplus /nolog SQL*Plus: Release 11.2.0.4.0 Production on 星期二 ...
- 11G新特性 -- Statistics Preferences
Statistics Preferences新特性可以实现对指定对象进行信息收集. 可以在table.schema.database.global级别设置statistics preference. ...
- Bash 中的特殊字符大全【转】
Linux下无论如何都是要用到shell命令的,在Shell的实际使用中,有编程经验的很容易上手,但稍微有难度的是shell里面的那些个符号,各种特殊的符号在我们编写Shell脚本的时候如果能够用的好 ...
- react-无状态组件
import React, { Component } from "react"; //import PostItem from "./PostItem"; / ...