flask返回数据到前端_Flask 入门学习整理

本文介绍了Flask框架的基础知识,包括快速入门的Hello World示例,框架搭建过程,如何使用路由和视图,以及如何与数据库交互。通过Jinja2模板引擎展示了如何返回HTML页面,并探讨了如何处理用户登录状态,提到了session和cookie两种方案。
摘要由CSDN通过智能技术生成

为了了解全栈知识,以及为了更多的学习一些后端方面的知识,而不仅仅局限于前端的方面,将在视频中学习到的一些知识整理成文章,方便日后查阅,回顾。

  • flask 光速入门感受
  • 一个行之有效的框架展示及从0开始完成一个网站的登陆和注册功能
  • flask 中如何处理路由
  • flask 中如何与数据库交互(M)
  • flask 中view的编写(V)
  • flask 中controller层编写(C)

1. Flask 入门体验 -- hello world

// 打开终端 
mkdir part-1
cd part-1
touch index.py
touch requirement.txt

# 在requirement.txt 写入 Flask 然后下载Flask
pip install -r requirement.txt

# 在Flask中 体验hello world

from flask import Flask
# 初始化一个Falsk实例
app = Flask(__name__)

@app.route("/")
def hello():
    return 'hello world‘

app.run(host='127.0.0.1', port=3000, debug=True)

这样,当请求127.0.0.1的时候,页面就会出现了hello world。光速体验一波flask,但是认真理解一下,首先初始化一个flask对象,@app.route则是引入路由装饰器,然后定义一个方法,这个方法在请求到根节点路由时会自动执行。最后在本地的3000端口启动该服务。

2. 一个行之有效的框架搭建

# 框架骨架展示
common
  -- models         # 用来存放与数据库中的表相关联的文件
      -- xxx.py
  -- libs           # 存放公共类
config              # 用来存放本地环境和生产环境的变量
  -- baseConfig.py
  -- localConfig.py
  -- productionConfig.py
controllers         # MVC 中控制层的文件

application.py      # 全局的变量类
www.py              # 路由的核心文件
manager.py          # 入口文件

requirement.txt     # python 的扩展文件 用来安装依赖
static              # 用来存放静态资源
  -- js
  -- css
  -- img
templates           # 模版文件即html结合flask的一些语法文件
  -- common         # 存放一些公共页面
    -- layout.html  
  -- index.html

一点一点开始搭建。如下图所示,框架搭建的目的是能够形成一个首页,登陆注册页之间形成一个完整的闭环。

76f526a716ad5bea75b4cc971a691d03.png

1.首先 在入口文件创建实例化对象

# application.py 全局变量类
from flask import Flask
app = Flask(__name__)

# manager.py
from application import app
app.run(host='127.0.0.1', port=3000, DEBUG=True)

# 此时 已经可以通过python manager.py 执行该文件启动一个web服务器 但没有任何返回

2.构建一个路由管理对象即处理 www.py文件

# 此时 引入一个新的名词 叫做蓝图 flask 通过蓝图Blueprint来管理注册这个整个应用的路由,
# 可以不需要,但是更规范
cd controllers
touch index.py member.py

# index.py
from flask import Blueprint

# 可以利用蓝图的前缀 然后将页面层次区分开

# 1. 首先实例化一个index_page
index_page = Blueprint( "index_page", __name__ )

# 2. 使用实例的装饰器
# 即当请求到对应路径时 会自动触发相应方法
@index_page.route('/')
def index():
    return 'welcome to index page'
# member.py 是控制登陆和注册页面的路由 同上

然后在www.py文件中注册路由

# www.py
from controllers.index import index_page
from controllers.member import member_page
from application import app

app.register_blueprint( index_page, url_prefix='/')
app.register_blueprint( member_page, url_prefix='/member‘)

最后在manager.py(启动文件中)引入路由ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值