




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Flask的文件上傳、擴(kuò)展與郵件2知識(shí)目標(biāo)Flask的文件上傳Flask的擴(kuò)展Flask的郵件01能力目標(biāo)掌握Flask的文件上傳了解Flask的擴(kuò)展了解Flask的郵件02學(xué)習(xí)目標(biāo)3目錄01Flask的文件上傳02Flask的擴(kuò)展03Flask的郵件Flask的文件上傳4在Flask中處理文件上傳非常簡單。它需要一個(gè)HTML表單,其enctype屬性設(shè)置為“multipart/form-data”,將文件發(fā)布到URL。URL處理程序從request.files[]對象中提取文件,并將其保存到所需的位置。每個(gè)上傳的文件首先會(huì)保存在服務(wù)器上的臨時(shí)位置,然后將其實(shí)際保存到它的最終位置。目標(biāo)文件的名稱可以是硬編碼的,也可以從request.files[file]對象的filename屬性中獲取。但是,建議使用secure_filename()函數(shù)獲取它的安全版本??梢栽贔lask對象的配置設(shè)置中定義默認(rèn)上傳文件夾的路徑和上傳文件的最大大小。app.config[‘UPLOAD_FOLDER’]定義上傳文件夾的路徑app.config[‘MAX_CONTENT_PATH’]指定要上傳的文件的最大大?。ㄒ宰止?jié)為單位)Flask的文件上傳5以下代碼具有'/upload'URL規(guī)則,該規(guī)則在templates文件夾中顯示'upload.html',以及'/upload-file'URL規(guī)則,用于調(diào)用uploader()函數(shù)處理上傳過程。'upload.html'有一個(gè)文件選擇器按鈕和一個(gè)提交按鈕。Flask的文件上傳6您將看到如下所示的界面。Flask的文件上傳7選擇文件后,單擊提交。表單的post方法調(diào)用'/upload_file'URL。底層函數(shù)uploader()執(zhí)行保存操作。以下是Flask應(yīng)用程序的Python代碼。Flask的擴(kuò)展8Flask通常被稱為微框架,因?yàn)楹诵墓δ馨ɑ赪erkzeug的WSGI和路由以及基于Jinja2的模板引擎。此外,F(xiàn)lask框架還支持cookie和會(huì)話,以及JSON,靜態(tài)文件等Web幫助程序。顯然,這不足以開發(fā)完整的Web應(yīng)用程序。而Flask擴(kuò)展就具備這樣的功能。Flask擴(kuò)展為Flask框架提供了可擴(kuò)展性。有大量的Flask擴(kuò)展可用。Flask擴(kuò)展是一個(gè)Python模塊,它向Flask應(yīng)用程序添加了特定類型的支持。FlaskExtensionRegistry(Flask擴(kuò)展注冊表)是一個(gè)可用的擴(kuò)展目錄??梢酝ㄟ^pip實(shí)用程序下載所需的擴(kuò)展名。Flask的擴(kuò)展9在本教程中,我們將討論以下重要的Flask擴(kuò)展:? FlaskMail-為Flask應(yīng)用程序提供SMTP接口? FlaskWTF-添加WTForms的渲染和驗(yàn)證? FlaskSQLAlchemy-為Flask應(yīng)用程序添加SQLAlchemy支持? FlaskSijax-Sijax的接口-Python/jQuery庫,使AJAX易于在Web應(yīng)用程序中使用每種類型的擴(kuò)展通常提供有關(guān)其用法的大量文檔。由于擴(kuò)展是一個(gè)Python模塊,因此需要導(dǎo)入它才能使用它。Flask擴(kuò)展名通常命名為flask-foo。導(dǎo)入的操作如下:fromflask_fooimport[class,function]對于0.7以后的Flask版本,您還可以使用語法:fromflask.extimportfoo對于此用法,需要激活兼容性模塊。它可以通過運(yùn)行flaskext_compat.py來安裝:Flask的郵件10基于web的應(yīng)用程序通常需要具有向用戶/客戶端發(fā)送郵件的功能。Flask-Mail擴(kuò)展使得與任何電子郵件服務(wù)器建立簡單的接口變得非常容易。首先,應(yīng)該在pip實(shí)用程序的幫助下安裝Flask-Mail擴(kuò)展。pipinstallFlask-Mail然后需要通過設(shè)置以下應(yīng)用程序參數(shù)的值來配置Flask-Mail。Flask的郵件11序號(hào)參數(shù)與描述1MAIL_SERVER電子郵件服務(wù)器的名稱/IP地址2MAIL_PORT使用的服務(wù)器的端口號(hào)3MAIL_USE_TLS啟用/禁用傳輸安全層加密4MAIL_USE_SSL啟用/禁用安全套接字層加密5MAIL_DEBUG調(diào)試支持。默認(rèn)值是Flask應(yīng)用程序的調(diào)試狀態(tài)6MAIL_USERNAME發(fā)件人的用戶名7MAIL_PASSWORD發(fā)件人的密碼8MAIL_DEFAULT_SENDER設(shè)置默認(rèn)發(fā)件人9MAIL_MAX_EMAILS設(shè)置要發(fā)送的最大郵件數(shù)10MAIL_SUPPRESS_SEND如果app.testing設(shè)置為true,則發(fā)送被抑制11MAIL_ASCII_ATTACHMENTS如果設(shè)置為true,則附加的文件名將轉(zhuǎn)換為ASCIIFlask的郵件12序號(hào)參數(shù)與描述1MAIL_SERVER電子郵件服務(wù)器的名稱/IP地址2MAIL_PORT使用的服務(wù)器的端口號(hào)3MAIL_USE_TLS啟用/禁用傳輸安全層加密4MAIL_USE_SSL啟用/禁用安全套接字層加密5MAIL_DEBUG調(diào)試支持。默認(rèn)值是Flask應(yīng)用程序的調(diào)試狀態(tài)6MAIL_USERNAME發(fā)件人的用戶名7MAIL_PASSWORD發(fā)件人的密碼8MAIL_DEFAULT_SENDER設(shè)置默認(rèn)發(fā)件人9MAIL_MAX_EMAILS設(shè)置要發(fā)送的最大郵件數(shù)10MAIL_SUPPRESS_SEND如果app.testing設(shè)置為true,則發(fā)送被抑制11MAIL_ASCII_ATTACHMENTS如果設(shè)置為true,則附加的文件名將轉(zhuǎn)換為ASCIIFlask的郵件13flask-mail模塊包含以下重要類的定義。Mail類它管理電子郵件消息傳遞需求。類構(gòu)造函數(shù)采用以下形式:flask-mail.Mail(app=None)構(gòu)造函數(shù)將Flask應(yīng)用程序?qū)ο笞鳛閰?shù)。Mail類的方法序號(hào)方法與描述1send()發(fā)送Message類對象的內(nèi)容2connect()打開與郵件主機(jī)的連接3send_message()發(fā)送消息對象Flask的郵件14Message類它封裝了一封電子郵件。Message類構(gòu)造函數(shù)有幾個(gè)參數(shù):Message類方法attach()-為郵件添加附件。此方法采用以下參數(shù):? filename-要附加的文件的名稱? content_type-MIME類型的文件? data-原始文件數(shù)據(jù)? 處置-內(nèi)容處置(如果有的話)。add_recipient()-向郵件添加另一個(gè)收件人在下面的示例中,Googlegmail服務(wù)的SMTP服務(wù)器用作Flask-Mail配置的MAIL_SERVER。步驟1-在代碼中從flask-mail模塊導(dǎo)入Mail和Message類。fromflask_mailimportMail,MessageFlask的郵件15步驟2-然后按照以下設(shè)置配置Flask-Mail。步驟3-創(chuàng)建Mail類的實(shí)例。mail=Mail(app)步驟4-在由URL規(guī)則(‘/’)映射的Python函數(shù)中設(shè)置Message
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 信用卡居間服務(wù)合同
- 預(yù)約合同違約責(zé)任的多維審視與實(shí)踐探究
- 2025年羅茨鼓風(fēng)機(jī)合作協(xié)議書
- 《深度解析:投資策略》課件
- 《混凝土澆筑工藝部分》課件
- 揭秘古代戰(zhàn)爭
- 醫(yī)生合同范例
- 土地流轉(zhuǎn)簡易合同范本
- 入資合伙合同范本
- 《北京大學(xué)面試》課件
- 2025年食品供應(yīng)商合同范本
- 《網(wǎng)絡(luò)信息安全教學(xué)》課件
- 徐州2025年江蘇徐州市口腔醫(yī)院招聘非在編醫(yī)務(wù)人員53人筆試歷年參考題庫附帶答案詳解-1
- 2025年01月2025中國作家協(xié)會(huì)所屬單位公開招聘11人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 用色彩情感引發(fā)共鳴社交媒體運(yùn)營秘訣
- 2025年江西機(jī)電職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2025年江蘇旅游職業(yè)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2025年上海市租房合同標(biāo)準(zhǔn)樣本(2篇)
- 四年級(jí) 人教版 數(shù)學(xué) 第三單元《乘法運(yùn)算律(四)(例8) -解決問題策略的多樣化》課件
- 《綠色低碳鋁評(píng)價(jià)導(dǎo)則及追溯指南》T CNIA 0245-2024
- (高清版)JTGT 3650-01-2022 公路橋梁施工監(jiān)控技術(shù)規(guī)程
評(píng)論
0/150
提交評(píng)論