如何查看jinja2模板的上級_如何使用Python的Flask和谷歌app Engine来构建一个web app...
前言
如果您想在很短的時(shí)間內(nèi)使用Python構(gòu)建web應(yīng)用程序,那么Flask是一個(gè)非常好的選擇。Flask是一個(gè)小而強(qiáng)大的web框架。它也很容易學(xué)習(xí)和簡(jiǎn)單的代碼。
在本教程中,我將向您展示如何使用API構(gòu)建一個(gè)包含一些動(dòng)態(tài)內(nèi)容的簡(jiǎn)單天氣應(yīng)用程序。本教程是初學(xué)者的一個(gè)很好的起點(diǎn)。您將學(xué)習(xí)如何從api構(gòu)建動(dòng)態(tài)內(nèi)容并將其部署到谷歌云上。
最終產(chǎn)品可以在這里看到:
http://weatherv2-220201.appspot.com/
要?jiǎng)?chuàng)建天氣應(yīng)用程序,我們需要從開(kāi)放的天氣圖請(qǐng)求一個(gè)API密鑰。免費(fèi)版允許每分鐘60次通話,這對(duì)這個(gè)應(yīng)用程序來(lái)說(shuō)已經(jīng)足夠了
我們將采取的步驟如下:
第一步:安裝Flask
第二步:構(gòu)建應(yīng)用程序結(jié)構(gòu)
第三步:使用API請(qǐng)求創(chuàng)建主應(yīng)用程序代碼
第四步:使用Jinja、HTML和CSS為應(yīng)用程序創(chuàng)建2個(gè)頁(yè)面(主頁(yè)面和結(jié)果頁(yè)面)
第五步:在本地電腦上部署和測(cè)試
第六步:部署在谷歌云上。
1、安裝Flask
我們將使用一個(gè)虛擬環(huán)境來(lái)構(gòu)建這個(gè)項(xiàng)目。但是我們?yōu)槭裁葱枰粋€(gè)呢?
使用虛擬環(huán)境,您可以為每個(gè)項(xiàng)目創(chuàng)建一個(gè)特定的本地環(huán)境。您可以選擇要使用的庫(kù),而不會(huì)影響您的電腦環(huán)境。當(dāng)您在筆記本電腦上編寫更多項(xiàng)目時(shí),每個(gè)項(xiàng)目將需要不同的庫(kù)。對(duì)于每個(gè)項(xiàng)目使用不同的虛擬環(huán)境,您的系統(tǒng)和項(xiàng)目之間或項(xiàng)目之間就不會(huì)發(fā)生沖突。
在WeatherApp文件夾中創(chuàng)建一個(gè)requirements.txt文件,其中包括Flask和其他我們需要的庫(kù),然后保存文件。需求文件是跟蹤您在項(xiàng)目中使用的庫(kù)的好工具。
Flask==0.12.3click==6.7gunicorn==19.7.1itsdangerous==0.24Jinja2==2.9.6MarkupSafe==1.0pytz==2017.2requests==2.13.0Werkzeug==0.12.1安裝需求及其依賴項(xiàng)。你現(xiàn)在準(zhǔn)備好建造你的WeatherApp了。這是創(chuàng)建本地環(huán)境的最后一步。
pip install -r requirements.txt2、構(gòu)造App結(jié)構(gòu)
創(chuàng)建兩個(gè)Python文件(主文件)。和兩個(gè)文件夾(靜態(tài)與子文件夾img,模板):
3、使用API請(qǐng)求(后端)創(chuàng)建主應(yīng)用程序代碼
設(shè)置好結(jié)構(gòu)后,就可以開(kāi)始編寫應(yīng)用程序的后端代碼了。Flask的“Hello world”示例只使用了一個(gè)Python文件。本教程使用兩個(gè)文件幫助您熟悉如何將函數(shù)導(dǎo)入主應(yīng)用程序。
py是將用戶路由到主頁(yè)和結(jié)果頁(yè)面的服務(wù)器。py文件創(chuàng)建一個(gè)帶有API的函數(shù),該函數(shù)根據(jù)所選城市檢索天氣數(shù)據(jù)。該函數(shù)填充結(jié)果頁(yè)面.
下一步是在開(kāi)放天氣圖上申請(qǐng)一個(gè)免費(fèi)的API密鑰:
4、使用Jinja、HTML和CSS創(chuàng)建頁(yè)面(前端)
這一步是關(guān)于創(chuàng)建用戶將看到的內(nèi)容。
HTML頁(yè)面weather和結(jié)果是后端main.py將路由到的頁(yè)面,并給出可視化結(jié)構(gòu)。CSS文件將帶來(lái)最后的效果。本教程中沒(méi)有Javascript(前端是純HTML和CSS)。
這是我第一次使用Jinja2模板庫(kù)來(lái)填充HTML文件。令我驚訝的是,它是多么容易帶來(lái)動(dòng)態(tài)圖像或使用功能。絕對(duì)是一個(gè)很棒的模板引擎。
5、本地部署和測(cè)試
在此階段,您已經(jīng)設(shè)置了環(huán)境、結(jié)構(gòu)、后端和前端。剩下的唯一事情就是啟動(dòng)你的應(yīng)用程序并在本地主機(jī)上享受它。
使用您的Web瀏覽器(Chrome、Mozilla等)訪問(wèn)cmd上建議的localhost鏈接。你應(yīng)該會(huì)看到你的新天氣應(yīng)用程序在你本地的筆記本上:)
6、部署在谷歌云上
最后一步是與全世界分享你的應(yīng)用程序。需要注意的是,有很多使用Flask構(gòu)建的web應(yīng)用程序的提供商。谷歌云只是眾多云中的一個(gè)。這篇文章不包括其他的一些,比如AWS, Azure, Heroku…
要在谷歌云上部署您的應(yīng)用程序,您需要1)安裝SDK, 2)創(chuàng)建一個(gè)新項(xiàng)目,3)創(chuàng)建3個(gè)本地文件,4)在線部署和測(cè)試。
按照谷歌的說(shuō)明安裝SDK連接到您的谷歌云賬戶,創(chuàng)建一個(gè)新項(xiàng)目并保存項(xiàng)目id(稍等片刻,直到供應(yīng)了新項(xiàng)目)
參考?:本文省去了一些具體步驟代碼,詳情請(qǐng)閱讀原文:
https://medium.com/free-code-camp/how-to-build-a-web-app-using-pythons-flask-and-google-app-engine-52b1bb82b221
總結(jié)
以上是生活随笔為你收集整理的如何查看jinja2模板的上級_如何使用Python的Flask和谷歌app Engine来构建一个web app...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: div置于页面底部_浏览器渲染页面的原理
- 下一篇: python中序列和列表区别细菌真菌病毒