diff --git a/python_flask.py b/python_flask.py new file mode 100644 index 0000000..f3e5580 --- /dev/null +++ b/python_flask.py @@ -0,0 +1,101 @@ +# _*_ coding: utf-8 _*_ + +# Flask中的一些定义 +# ============================================================================================================================= +# WSGI: Web服务器网关接口,是一种Web服务使用的协议。 +# 路由: 处理URL和函数之间关系的程序称为"路由"。 +# 视图函数: 类似于index()这样的,被app.route装饰器注册为路由的函数,或者通过app.add_url_rule()添加路由映射关系的函数,被称为视图函数。 +# app.route(): 路由装饰器,可以带参数,参数可以指定数据类型:int/float/path。path类似于字符串,但不将反斜线/当做分隔符。 +# ============================================================================================================================= + +# Flask上下文全局变量 +# ============================================================================================================================= +# current_app: 程序上下文,当前激活程序的程序实例,所有线程公用一个该实例。 +# g: 程序上下文,处理请求时用作临时存储的对象,每次请求都会重设这个变量。 +# request: 请求上下文,请求对象,封装了客户端发出的 HTTP 请求中的内容,不同线程之间互不干扰。 +# session: 请求上下问,用户会话,用于存储请求之间需要“记住”的值的词典。 +# ============================================================================================================================= + +# Flask支持的4种钩子函数 +# ================================================================================================= +# before_first_request: 注册一个函数,在处理第一个请求之前运行。 +# before_request: 注册一个函数,在每次请求之前运行。 +# after_request: 注册一个函数,如果没有未处理的异常抛出,在每次请求之后运行。 +# teardown_request:注册一个函数,即使有未处理的异常抛出,也在每次请求之后运行。 +# ================================================================================================= + +# Jinja2变量过滤器 +# ================================================================================================= +# safe: 渲染值时不转义 +# capitalize: 把值的首字母转换成大写,其他字母转换成小写 +# lower: 把值转换成小写形式 +# upper: 把值转换成大写形式 +# title: 把值中每个单词的首字母都转换成大写 +# trim: 把值的首尾空格去掉 +# striptags: 渲染之前把值中所有的 HTML 标签都删掉 +# ================================================================================================= + +# Flask-Bootstrap基模板中定义的块 +# ================================================================================================= +# doc: 整个 HTML 文档 +# html_attribs: 标签的属性 +# html: 标签中的内容 +# head: 标签中的内容 +# title: 标签中的内容 +# metas: 一组 <meta> 标签 +# styles: 层叠样式表定义 +# body_attribs: <body> 标签的属性 +# body: <body> 标签中的内容 +# navbar: 用户定义的导航条 +# content: 用户定义的页面内容 +# scripts: 文档底部的 JavaScript 声明 +# ================================================================================================= + +# WTForms支持的HTML标准字段 +# ================================================================================================= +# StringField 文本字段 +# TextAreaField 多行文本字段 +# PasswordField 密码文本字段 +# HiddenField 隐藏文本字段 +# DateField 值为datatime.data格式的文本字段 +# DateTimeField 值为datatime.datatime格式的文本字段 +# DecimalField 值为decimal.Decimal格式的文本字段 +# IntegerField 值为整数的文本字段 +# FloatField 值为浮点数的文本字段 +# BooleanField 值为True或False的复选框 +# RadioField 一组单选框 +# SelectField 值唯一的下拉列表 +# SelectMultipleField 可选多个值得下拉列表 +# FileField 文件上传字段 +# SubmitField 表单提交按钮 +# FormField 把表单作为字段嵌入另一个表单 +# FieldList 一组指定类型的字段 +# ================================================================================================= + +# WTForms验证函数 +# ================================================================================================= +# Email 验证电子邮件地址 +# EqualTo 比较两个字段的值;常用于要求输入两次密码进行确认的情况 +# IPAddress 验证 IPv4 网络地址 +# Length 验证输入字符串的长度 +# NumberRange 验证输入的值在数字范围内 +# Optional 无输入值时跳过其他验证函数 +# Required / DataRequired 确保字段中有数据 +# Regexp 使用正则表达式验证输入值 +# URL 验证 URL +# AnyOf 确保输入值在可选值列表中 +# NoneOf 确保输入值不在可选值列表中 +# ================================================================================================= + +# uWSGI配置和nginx配置 +# uwsgi -s /tmp/uwsgi.sock -w MyShow:app --chmod-socket=666 +# server { +# listen 80; +# server_name wangluopachong.com; +# +# charset utf-8; +# +# location / { +# include uwsgi_params; +# uwsgi_pass unix:/tmp/uwsgi.sock; +# }