flask之二】的更多相关文章

Flask备注二(Configuration, Signals) Flask是一个使用python开发Web程序的框架.依赖于Werkzeug提供完整的WSGI支持,以及Jinja2提供templates支持.Flask的设计理念是提供Micro以及方便的框架."Micro"是因为除了提供基本特性功能的实现外,其他的功能(例如数据库访问)都是通过extension来完成.方便的特点是因为提供了简单易用的必要特性和功能,提供的功能包含: 内置的开发服务器和调试工具. 集成单元测试支持.…
flask之二 预热 在渲染模板的时候,默认会从项目根路径下的templates目录下查找模板 如果想要指定模板路径的时候,就在初始化APP的时候,这样操作即可: app = Flask(__name__,template_folder='C:/templates') #template_folder可以指定模板位置 模板传参 在使用render_template渲染模板的时候,可以传递关键字参数,以后直接在模板中使用就可以了 如果参数过多的话,那么就可以将所有的参数放到一个字典中,然后再传这个…
一  模板 1.模板的使用 Flask使用的是Jinja2模板,所以其语法和Django无差别 2.自定义模板方法 Flask中自定义模板方法的方式和Bottle相似,创建一个函数并通过参数的形式传入render_template,如: <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> &…
内容有:1.配置文件处理,2.路由系统,3.视图,4.请求,5.响应,6.模板渲染,7.session,8.flash,9.中间件,10特殊装饰器 一:一个简单知识点 通过路径构成的字符串1.动态导入模块2.找到类,3.字段4.字段的值 import importlib path = "settings.Foo" path_item = path.rsplit(".",maxsplit=1) # 1.通过importlib导入模块 module = importli…
简介: 上一篇文章,我们简单的测试了一下服务器环境和docker基础镜像.并没有涉及我们自己编写的flask python程序. 现在,我们就要把我们自己的flask程序,放进docker镜像. 但是比较遗憾的是,本篇没有图形界面操作了. 想继续图形操作的,请自行查阅docker hub自动生成镜像.需配合github. 以后会写这个文章.暂时没有,下次写了,再更新链接. 一:编写flask 这个就不说了吧,我这教部署呢,怎么写flask,另找高明. 测试用的flask代码如下所示: venv文…
知识点回顾 1.flask依赖wsgi,实现wsgi的模块:wsgiref(django),werkzeug(flask),uwsgi(上线) 2.实例化Flask对象,里面是有参数的 app = Flask(__name__,template_folder='templates',static_url_path='/xxxxxx') 3.两种添加路由的方式 方式一: @app.route('/xxxx') # @decorator def index(): return "Index"…
一.调试模式(debug模式) 1.设置debug模式 在app.run()中传入关键字参数debug,app.run(debug=Ture),就设置当前项目为debug模式.如下所示: # 从flask框架中导入Flask类 from flask import Flask # 传入__name__初始化一个Flask实例 app = Flask(__name__) # app.route装饰器映射URL和执行的函数.这个设置将根URL映射到了hello_world函数上 @app.route(…
Flask中的路由 查看整个flask中的路由映射关系 app.url_map from flask import Flask app = Flask(__name__) @app.route("/index") def index() return "flask index page" if __name__ == "__main__": print(app.url_map) app.run() # 下面是打印效果 ''' Map([<R…
Flask-SQLALchemy Flask-SQLALchemy 是一个给你的应用添加 SQLALchemy 支持的 Flask 扩展. 它需要 SQLAlchemy 0.6 或更高的版本.它致力于简化在 Flask 中 SQLAlchemy 的 使用,提供了有用的默认值和额外的助手来更简单地完成日常任务. 我的conda源没有,我就直接pip3 数据库连接: 1. 与sqlalchemy一样,定义好数据库连接字符串DB_URI.2. 将这个定义好的数据库连接字符串DB_URI,通过SQLAL…
Flask框架 打开pycharm编译器,新建一个Flask项目,选择提前建好的虚拟环境 . 项目结构: static:静态资源文件,可以直接被浏览器访问 templates:模版文件,必须在项目的python代码中进行渲染给前端,浏览器才可访问 app.py:python的程序文件 返回信息:可以是字符串.html标签.模版 请求流程: Flask对象注册的路由 路由映射给相应函数 函数进行和数据交互 数据进行展示给前端 from flask import Flask app = Flask(…
今天接着上一篇继续写一篇关于flask的随笔. 本文大纲: 1.获取请求参数 2.一个函数处理多个请求方式 3.重定向 4.错误响应 5.全局错误处理 6.返回json格式数据 7.自定义返回内容状态码 一.request获取请求参数 from flask import Flask, request app = Flask(__name__) @app.route("/") def index(): a = request #get请求 get_data = request.args…
一.路由 使用 route() 装饰器来把函数绑定到 URL: @app.route('/') def index(): return 'Index Page' @app.route("/hello") def view_func(): return "hello world" 但是能做的不仅仅是这些!你可以动态变化 URL 的某些部分, 还可以为一个函数指定多个规则. 变量规则 通过把 URL 的一部分标记为 <variable_name> 就可以在…
web表单 web表单是浏览者和网之间的一个互动平台,完成浏览器和服务器之间的数据交互. 1.用Flask-WTF来处理表单 (1)在根目录下编辑扩展配置--config.py CSRF_ENABLED = True SECRET_KEY = 'you-will-never-guess' CSRF_ENABLED配置跨站点保护,就是防止程序挟持用户执行非本意的操作,是一种web的攻击行为,这个设置会提高web的安全性. SECRET_KEY是当CSRE(跨站请求伪造)激活时执行,实现加密用来验证…
jinja2模版 from flask import Flask,render_template app = Flask (__name__) @app.route ('/<name>') def index(name): return render_template('index.html',name=name) @app.route ('/user/<name>') def user(name): return render_template('user.html',name=…
flask中的路由系统: endpoint:反向url地址,默认为视图函数名(url_for). from flask import Flask,url_for app = Flask(__name__) @app.route("/index/",endpoint="func") def index(): print(url_for("func")) # /index/ return "helloworld" if __nam…
WSGI     Web服务器网关接口 WSGI主要规定了Web服务器如何与Web应用程序进行通信,以及如何将Web应用程序链接在一起来处理一个请求. wsgiref Python中的WSGI参考模块 一.WSGI 应用程序端: 1. 根据WSGI定义,应用程序应该是可调用对象 2.该可调用对象必须有两个固定参数:environ.start_response 一个是含有服务器环境变量的字典,另一个是可调用对象,该对象使用HTTP状态码和会返回给客户端的HTTP头来初始化响应 environ 变量…
快速入门 迫切希望上手?本文提供了一个很好的 Flask 介绍.假设你已经安装 Flask, 如果还没有安装话,请浏览下 安装 . 一个最小的应用 一个最小的应用看起来像这样: from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World!' if __name__ == '__main__': app.run() 把它保存成 hello.py (或者类似的…
url详解: URL是Uniform Resource Locator 的简写,统一资源定位符 一个URL由以下及几部分组成: scheme://host:port/path/?query-string=xxx#anchor scheme:代表的是访问的协议,一般为http或者https以及ftp等 host:主机名,域名,比如:www.baidu.com port:端口号.当你访问一个网站的时候,http默认的端口号是80,https是443 path:查找路径.比如:www.jianshu.…
安装了flask扩展 以及flask-bootstrap 默认情况下,flask在template文件夹寻找模板. flask 加载的是Jinja2模板,该模板引擎在flask中由函数render_template集成 所以在文件中这样渲染模板 from flask import Flask,render_template #... @app.route('/') def index(): return render_template('index.html') @app.route('/use…
jinja2模板规范 在当前项目中创建一个文件为templates的文件夹,将其设置为模板文件夹,新建的html为模板页面, 在视图函数中使用render_template(".html的文件", my_list=mylist),my_list作为在模板页面使用的的变量 {{ my_list}} 过滤器 符号 "|" 管道左边作为输入传一个变量到管道右边进行输出 safe 对字符串的html标签的代码进行解析,并以html显示在当前文件 reverse 翻转 upp…
Windows(提前安好virtualenv:pip  install  virtualenv) 一.准备: 1.启动pycharm 2.创建flask项目 二.基本库安装和设置 1.创建沙盒virtualenv flask 2.再次设置 3.安装flask:pip install flask 4.安装flask-script:pip install flask-script 注:简单来说,就是一个flask终端启动参数解析工具:这样我们就可以不更改代码完成不同方式的启动. 三.基本框架 1.创…
我是在pycharm中写的.那么需要在Termainal中cd 到当前文件所在的文件夹,在运行python py文件名 一开始想用面向对象的方法来封装这些小模块,但发现在面向对象中要用到类属性,以及类的静态方法,也可能需要修改类属性的方法.果断放弃了 那么我又试了函数的封装.还是不行,对一些技能的掌握还是差火候.因为有装饰器,那么在一个大的函数中使用函数嵌套也很麻烦.那么用一个装饰器装饰所有的封装函数的话, 还是有局限性.不是说不行,说到底还是自己的技能掌握还是很差劲 所以以失败告终.待下次技能…
最近使用flask写了一些简单的服务. 服务部署到服务器上进行使用,这个过程会有一些问题,需要进行记录一下. 说明运行的环境情况.使用的是python3.6的虚拟环境,系统是centos7,其他的有uwsgi,supervisor,ngnix. 首先准备一个简单的flask服务. 代码ipapp.py: # encoding=utf-8 # date: 2019/3/5 __author__ = "Masako" from flask import Flask app = Flask(…
今日内容: 上下文管理:LocalProxy对象 上下文管理:  请求上下文: request/session   app上下文:app/g 第三方组件:wtforms       1.使用     2.原理 一.LocalProxy 首先我们一看一段自己写的代码: #test.py DATA={ 'request':{ 'method':'GET', 'form':{} }, 'session':{ 'user':'duoduo', ' } } class LocalProxy(object)…
目录 Flask学习初识 Flask学习二…
Flask 添加登陆验证装饰器报错,及解析 写这个之前,是想到一个需求,这个是关于之前写Flask笔记(二)中的一个知识点,路由相关 需求为 : 有一些页面必须是登陆之后才能访问的,比如ShoppingCart,说白了就是写一个登陆验证,那怎么才能知道当前这个请求 就是登陆状态的呢?如果不是登陆状态,那应该重定向到login页面 from flask import Flask,request,session,redirect,url_for app = Flask(__name__) # 如果要…
刚开始接触flask,新创建后不能运行,报错如下图: 导致该错误有两种可能,没安装flask:文件名为flask. 可尝试如下两种方法解决: 方法一:若没安装过flask,则进入cmd,输入pip install flask 方法二:若安装过flask,则看文件名是否是flask 如果是,则右键点击Refactor——>Rename,改个别的名字. 注:改完名字后,from flask import Flask 里的 flask 也会随之改动,手动改回来即可.…
目录 Flask - 第一篇 安装,仪式, 返回, 和 请求 一. Flask 的安装 和 程序员仪式 安装 程序员仪式 二. Flask 的返回值 三. Flask 请求request Flask - 第一篇 安装,仪式, 返回, 和 请求 我们每学一个框架, 总会将他与其他框架作比较 Django web框架: 优点 - 组件非常全,教科书框架,admin model-ORM session 缺点 - 资源浪费,因为组件多,大,还是互相关联的,随便卸载组件,可能会造成项目的崩溃 Flask…
目录 一.Flask - CBV 二.Flask - Session 1.安装flask-session 2.回顾flask自带的session的使用方法 3.flask-session的使用(以保存到redis为例) 三.WTForms组件 1.安装 2.使用(以登录注册为例) 一.Flask - CBV from flask import Flask, render_template, url_for, views app = Flask(__name__) class Login(view…
目录 一. Flask基础(一) 1.Flask启动 2.路由 3.Response 4.Request 5.Jinja2 6.session 二.Flask基础(二) 1.路由配置 (1)methods (2)endpoint (3)defaults (4)strict_slashes (5)redirect_to (6)subdomain 2.动态路由参数 实例1 实例2 实例3 总结 3.Flask实例化配置 4.Flask对象配置 5.特殊装饰器 6.重定义错误提示errorhandle…