Flask入门

Flask入门

一、Flask框架的简介

Flask是当下流行的Web框架,它是用Python实现的。Flask显著的特点是:它是一个“微”框架。”微”意味着Flask旨在保持核心的简单,但同时又易于扩展。默认情况下,Flask 不包含数据库抽象层、表单验证,或是其它任何已有多种库可以胜任的功能。然而,Flask 支持用扩展来给应用添加这些功能。众多的扩展提供了数据库集成、表单验证、上传处理、各种各样的开放认证技术等功能。Flask的这些特性,使得它在Web开发方面变得非常流行。

二、MVC设计模式

一种软件设计典范,用一种业务逻辑,使数据,界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面与用户交互的同时,不需要重新编写业务逻辑。
MVC被独特的发展起来用于映射传统的输入,处理和输出功能在一个逻辑的图形化界面结构中
核心思想:解耦
优点:降低个模块之间的耦合性,方便变更,更容易重构代码,最大程度实现了代码的重用。

MVC(Model,View,Controller)

MVC开始是存在于桌面程序中的,M是指业务模型 model,V是指用户界面 view,C则是控制器 controler,使用 MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图 来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新 实现了模型层的复用

Model:用于封装与应用程序的业务逻辑相关的数据及对数据的处理方法,是Web应用程序中用于处理应用程序的数据逻辑部分,Model通常只提供功能性的接口,通过这些接口可以获取Model的所有功能。

View:负责数据的显示和呈现,View是对用户的直接输出。

Controller:负责从用户端收集用户的输入,可以看成提供View的反向功能,主要处理用户交互

在这里插入图片描述

三、python中MVT

MVT(Model,View,Templates)

Model:用于封装与应用程序的业务逻辑相关的数据及对数据的处理方法,是Web应用程序中用于处理应用程序的数据逻辑部 分,Model通常只提供功能性的接口,通过这些接口可以获取Model的所有功能。

Templates:负责数据的显示和呈现,View是对用户的直接输出。

View:负责从用户端收集用户的输入,可以看成提供View的反向功能,主要处理用户交互
在这里插入图片描述

四、WEB架构

(1) B/S 浏览器->服务器

WEB网站

(2) C/S 客户端->服务器

QQ

B/S结构是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现

的核心部分集中到服务器上,简化了系统的开发、维护和使用。

在这里插入图片描述

五、Flask框架俩大核心

Werkzeug 和 Jinja2

Werkzeug:实现路由 调试 和 web服务器网关接口

Jinja2:实现了模板(是flask核心开发组成员开发的)

六、Flask的简单入门使用

(1) 安装

pip install flask

(2) 启动完整程序

实例:

from flask import Flask
#实例化flask类 传入必传参数 __name__ import_name
app = Flask(__name__)

# 添加路由
@app.route('/')
def index():
    return 'Hello World'


# 运行
if __name__ == '__main__':
    app.run()

注意:

假如在运行flask项目过程中 出现地址被占用 那也就是说 之前开启的服务并没有死掉 那么你可以去杀死进程 或者关闭编辑器 在或者更改一下端口号 这些都可以解决这个问题

端口不传 默认5000

访问:

http://127.0.0.1:5000/

(3) 路由地址

# 添加路由 装饰器  传参就是字符串 
@app.route('/')
def index():
    return 'Hello World'

访问:

主机:端口/

(4) 启动参数

参数说明
debug是否开启调试模式 默认为False 开启后自动加载代码 并进行入调试
threaded是否开启多线程 默认不开启
port端口号 默认5000
host指定主机 默认127.0.0.1

app.run(host=‘0.0.0.0’,port=5001,debug=True,threaded=True)

当将主机设置为0.0.0.0 意味着可以使用IPV4或者127.0.0.1/localhost进行访问 如果不设置0.0.0.0 只能localhost/127.0.0.1进行访问

©️2020 CSDN 皮肤主题: 游动-白 设计师:上身试试 返回首页