真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

flask框架一般要學(xué)多久-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

創(chuàng)新互聯(lián)建站是一家企業(yè)級(jí)云計(jì)算解決方案提供商,超15年IDC數(shù)據(jù)中心運(yùn)營(yíng)經(jīng)驗(yàn)。主營(yíng)GPU顯卡服務(wù)器,站群服務(wù)器,遂寧聯(lián)通機(jī)房,海外高防服務(wù)器,成都機(jī)柜租用,動(dòng)態(tài)撥號(hào)VPS,海外云手機(jī),海外云服務(wù)器,海外服務(wù)器租用托管等。

這篇文章主要介紹flask框架一般要學(xué)多久,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

相信學(xué)過Python的小伙伴,肯定都知道Flask這個(gè)web開發(fā)框架,但是并不是所有人都了解它,下面說一說Flask這個(gè)框架該怎么學(xué),要學(xué)多久才能掌握。

首先,什么是Flask

Flask是一個(gè)基于Python并且依賴于Jinja2模板引擎和Werkzeug WSGI服務(wù)的一個(gè)微型框架

Flask中包含一個(gè)輕量級(jí)的web 服務(wù)器主要用于在開發(fā)階段測(cè)試使用

Falsk使用MTV框架模式

MTV框架模式

M : Models , 模型層 , 主要負(fù)責(zé)根據(jù)數(shù)據(jù)庫建模

T : Templates , 模板層 ,處理用戶的顯示的內(nèi)容的,如:html

V : Views ,視圖 , 處理與用戶交互的內(nèi)容(請(qǐng)求和響應(yīng))

下面我們從Templates、Views和Models這三個(gè)部分來了解下Flask框架

Templates

Templates這部分主要講解以下幾個(gè)部分:

過濾器

語法:
{{變量|過濾器}}

Jinja2模板中常用的過濾器有:
capitalize     首字符變大寫,其他字符變小寫
lower          將值轉(zhuǎn)換為小寫字符
upper          將值轉(zhuǎn)換為大寫字符
title          將值中的每個(gè)單詞的首字符變大寫
trim           去掉值兩端的空格

標(biāo)簽(for循環(huán)遍歷可迭代對(duì)象)

{% for 變量 in 列表|元組|字典 %}
{% endfor %}
for標(biāo)簽中的內(nèi)置對(duì)象loop
loop.index 獲取下標(biāo)
loop.index0 從0開始的下標(biāo)
loop.first True/False
loop.last  True/False

下面是一個(gè)關(guān)于Flask中宏的用法的實(shí)例:

{% macro showP(str) %}
    

使用宏顯示的內(nèi)容:

    

{{str}}

{% endmacro %}
    {% for name in params.list %}         {{showP(name)}}     {% endfor %}
{% import 'macros.html' as ms %} {% for name in params.list %}     {{ms.show_p(name)}} {% endfor %}

繼承

父模板中:
{% block title %}
    父模板中的內(nèi)容
{% endblock %}

子模板中:
{% extends '父模板.html' %}
{% block title %}
    子模板中的內(nèi)容
{% endblock %}

子模板中的內(nèi)容會(huì)覆蓋父模板中的內(nèi)容

自定義404/500等錯(cuò)誤頁面

1.404 的錯(cuò)誤處理
	@app.errorhandler(404)
	def page_not_fount(e):
		return render_template('404.html'),404
2.500 的錯(cuò)誤處理
	@app.errorhandler(500)
	def internal_server_error(500):
		return render_template('500.html'),500
404.html 和 500.html 需要自定義

Views

Views這部分主要講解以下幾個(gè)部分:

路由

請(qǐng)求方法

url反向解析

request對(duì)象

響應(yīng)response

文件上傳

cookies

session

路由

一:基本路由的配置:
#http://127.0.0.1:5000/
@app.route('/')
def index():
	return "xxx"

二:帶參數(shù)路由的配置:
1.基本帶參數(shù)的路由
@app.route('/show/')
def show1(name):
	name:表示的就是地址欄上傳遞的數(shù)據(jù)
	pass
2.指定參數(shù)類型的路由
@app.route('/show//')
def show(name,age):
	name : 字符串
	age : 整數(shù)
可選的參數(shù)類型為 int float path(字符串,可以有斜杠/)

三:多個(gè)路由的配置:
@app.route('/地址1')
@app.route('/地址2')
....
def index():
	pass

請(qǐng)求方法

在Flask中默認(rèn)只能接收get請(qǐng)求,post請(qǐng)求無法接收,但是可以手動(dòng)設(shè)置請(qǐng)求的接收方式。

下面的函數(shù)既能接收get請(qǐng)求又能接收post請(qǐng)求
@app.route('/xxx',methods=['POST','GET'])
def  xxx():
    pass

文件上傳

html文件:


    

        用戶姓名:      

    

        用戶圖像:      

    

             

后臺(tái)代碼

@app.route('/01-file',methods=['GET','POST'])
def file_views():
    if request.method == 'GET':
        return render_template('01-file.html')
    else:
        #處理的上傳的文件
        #1.得到上傳的文件
        f = request.files['uimg']
        #2.將文件保存進(jìn)指定的目錄處[相對(duì)路徑]
        # print('文件名稱:'+f.filename)
        # f.save('static/'+f.filename)

        #3.將文件保存進(jìn)指定的目錄處[絕對(duì)路徑]
        #獲取當(dāng)前文件的所在目錄名
        basedir = os.path.dirname(__file__)
        #print('當(dāng)前文件所在目錄的絕對(duì)路徑:'+basedir)
        #獲取當(dāng)前的時(shí)間拼成字符串,再拼上擴(kuò)展名
        ftime=datetime.datetime.now().strftime("%Y%m%d%H%M%S%f")
        #獲取文件的擴(kuò)展名 (b04.jpg)
        ext = f.filename.split('.')[1]
        filename = ftime + "." + ext
        upload_path = os.path.join(basedir,'static/upload',filename)
        # print('完整的上傳路徑:'+upload_path)
        f.save(upload_path)
        return "Save OK"

cookies

增:
    resp=make_response('保存cookie成功')
    resp.set_cookie('uname','test',3600)
刪:
    響應(yīng)對(duì)象.delete_cookie('key')
查詢:
    uname = request.cookies.get('key')
    request.cookies['key']
    request.cookies   # 拿到所有的cookies
    if 'key' in request.cookies:
        pass

session

from flask import session
配置 SECRET_KEY:
      app.config['SECRET_KEY']="thisisarandomstring"
增:
    session['key'] = value
刪:
    del session['key']
查:
    value = session['key']
    value = session.get('key')

以上是“flask框架一般要學(xué)多久”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!


標(biāo)題名稱:flask框架一般要學(xué)多久-創(chuàng)新互聯(lián)
鏈接URL:http://weahome.cn/article/gihjs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部