python WEB框架Flask學習

2021-09-19 15:10:33 字數 2811 閱讀 9229

from flask import flask

def index():

return 'index'

if __name__=="__main__":

方式一

方式二列如

settings.py

class config:

debug=true

# 連線mysql示例

database_uri="mysql+pymysql:資料庫名"

# 開發中示例

class developmentconfig(config):

debug=true

# 類檢視的寫法

from flask.views import view

class index(view):

# 請求的方式

methods=['get']

# 裝飾器

def get(self):

return "get"

def post(self):

return "post"

# 路由

靜態檔案的引入

}路由反向解析

例如藍圖名為---blue

}

請求與響應

請求前呼叫此-- 可應用於藍圖

def test():

pass

# 響應後呼叫次函式

def test2():

return "ok"

設定session

session['username']=username

刪除session

session.pop('username')

cookie的設定

request.set_cookie['username']=***x

cookie的獲取

request.cookies['***']

兩個函式 

flash()    可分類   flash(category=['xx']) 

get_flashed_messages()    分類收 get_flashed_messages(category_filter=['xx'])  get_flash_messages->list 返回乙個列表

通過看原始碼得知

中介軟體的配置如下

解釋 --1.需要自定義乙個中介軟體類

from flask import flask, flash, redirect, render_template, request

def index1():

return render_template('index.html')

def index2():

v = request.args.get('p')

flash(v)

return 'ok'

class middleware:

def __call__(self, *args, **kwargs):

if __name__ == "__main__":

1.安裝  pip install  flask-sqlalchemy

2.連線資料庫

1.配置如下

2.連線資料庫

# 匯入models.py 中例項化的db物件

models.py

from flask_sqlalchemy import sqlalchemy

db=sqlalchemy()

創表class student(db.model):

# 存在資料庫中的表明 不寫預設是類名的是小寫

__tablename__ = 'student'

id = db.column(db.integer, primary_key=true, autoincrement=true)

name = db.column(db.string(10), unique=true)

age = db.column(db.integer, default=18)

grade_id = db.column(db.integer, db.foreignkey('grade.id'), nullable=true)

# studnet.course 得到course物件 可對course表操作

course = db.relationship('course', secondary=c_s, backref='student')

class grade(db.model):

__tablename__ = 'grade'

id = db.column(db.integer, primary_key=true, autoincrement=true)

name = db.column(db.string(10), nullable=false, unique=true)

# 關聯關係 grade.student 得到學生物件 可對學生表操作

student = db.relationship('student', backref='grade')

class course(db.model):

id = db.column(db.integer, primary_key=true, autoincrement=true)

# 描述符

name = db.column(db.string(10), unique=true, nullable=false)

__tablename__ = 'course'

python web開發框架

django python web應用開發框架 django 應該是最出名的python框架,gae甚至erlang都有框架受它影響。django是走大而全的方向,它最出名的是其全自動化的管理後台 只需要使用起orm,做簡單的物件定義,它就能自動生成資料庫結構 以及全功能的管理後台。diesel 基...

python web框架 推薦

flask 很輕,花很少的成本就能夠開發乙個簡單的 非常適合初學者學習。學會以後,可以考慮學習外掛程式的使用,用 sqlalchemy flask sqlalchemy 來對你的資料庫進行控制。django全能型框架 但是不建議初學者學習,因為要學習的東西太多了,一下子難以吸收會失去興趣。當然,dj...

Python Web開發框架

python中的web框架 flask例程 可重用成熟,穩健 可擴充套件性良好 提高開發速度 web框架中的概念 大包大攬的django 優點 完美文件。全套解決方案 cache,session,orm 強大的url路由配置 自助管理後台 缺點 系統緊耦合 自帶的orm不夠強大 template比較...