<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          10分鐘,小白也能用Django做個(gè)小App!

          共 3465字,需瀏覽 7分鐘

           ·

          2021-10-14 16:21


          Python里面最強(qiáng)大的web開發(fā)框架非Django莫屬,當(dāng)然很多老鳥會(huì)跳出來(lái)說Flask也是很牛逼的,還有一些高手會(huì)噴你說前兩個(gè)都是菜雞,天下武功唯快不破fastapi框架才是最強(qiáng)大。關(guān)于框架的爭(zhēng)論一直都是喋喋不休,沒有最好,只有最合適的。

          一個(gè)剛開始學(xué)走路的人,你跟他說你跑步需要穿什么鞋,用什么裝備我覺得都是扯淡,合腳就可以。言歸正傳,我還是覺得Django是最適合小白入門的Python web框架。


          現(xiàn)在回想我開始學(xué)的時(shí)候,到處找資料,很多資料不是太深,就是太長(zhǎng),硬著頭皮看完,哈欠直打,看的是云里霧里。沒等看完,興奮的勁頭已經(jīng)折磨耗盡。所以我覺得入門就兩個(gè)字,一定要 “簡(jiǎn)單,簡(jiǎn)單,簡(jiǎn)單“。


          不要整那么多的理論,不要說那么多的大而全的東西,先讓我上手再說。好,今天菜鳥哥給大家?guī)?lái)一個(gè)10分就可以上手Django的趣味案例,非常適合小白上手,希望看完之后,各位領(lǐng)導(dǎo)來(lái)留言區(qū)指導(dǎo)工作,每個(gè)月留言的同學(xué)都送書哦!

          00.啥小應(yīng)用
          一個(gè)網(wǎng)站,其實(shí)涉及到很多知識(shí)點(diǎn),前端,后端,數(shù)據(jù)庫(kù),用戶管理,后臺(tái)控制。今天我們的小app其實(shí)就是一個(gè)簡(jiǎn)單的密碼生成器Web。

          復(fù)雜的我們統(tǒng)統(tǒng)不涉及,只有一個(gè)前端頁(yè)面和一個(gè)后臺(tái)路由,包你簡(jiǎn)單易學(xué),學(xué)習(xí)就是要由淺入深,循序漸進(jìn),等你學(xué)會(huì)了一個(gè)頁(yè)面的制作,再學(xué)多個(gè)頁(yè)面,多個(gè)路由就會(huì)簡(jiǎn)單很多。


          1.創(chuàng)建工程

          首先我們要?jiǎng)?chuàng)建項(xiàng)目,然后創(chuàng)建一個(gè)應(yīng)用。新建一個(gè)文件夾比如叫
          06.password_generator,然后進(jìn)入這個(gè)文件夾新建項(xiàng)目:
          django-admin startproject password_generator


          接著我們要?jiǎng)?chuàng)建一個(gè)應(yīng)用: 進(jìn)入剛才創(chuàng)建的文件夾password_generator

          python3 manage.py startapp generator


          2.啟動(dòng)項(xiàng)目
          然后到我們的工程項(xiàng)目里面,找到settings.py這個(gè)文件修改我們的語(yǔ)言設(shè)置為zh-hans,表示我們后臺(tái)的啟動(dòng)都是用中文顯示。然后啟動(dòng)我們的項(xiàng)目,因?yàn)殡娔X上的端口8000被其他項(xiàng)目占用了,這里我用了9000端口。


          這個(gè)時(shí)候你打開瀏覽器,就可以看到Django標(biāo)志性的小火箭界面了。

          然后記得在我們的settings里面把generator加入到我們的應(yīng)用列表里面。


          2.設(shè)計(jì)路由

          我們這個(gè)應(yīng)用只有一個(gè)頁(yè)面,所以路由非常簡(jiǎn)單,在項(xiàng)目文件的urls里面添加一個(gè)路由到我們的應(yīng)用里面。

          增加一個(gè)路由,當(dāng)訪問http://127.0.0.1:9000/的時(shí)候,就可以映射到generator.urls里面處理。


          然后,我們接著增加應(yīng)用generator的urls.py里面的文件

          用戶訪問的處理都放到我們的views視圖里面來(lái)處理,我們馬上增加一個(gè)hello world到視圖里面。


          好,打完上面的招式,我們算是成功了一小步,成功路由-視圖已經(jīng)完全通過了。我們刷新一下也沒就會(huì)看到hello world了。


          3.增加模版文件

          上面房子框架搭建好了,我們需要開始對(duì)對(duì)房子進(jìn)行裝修設(shè)計(jì)了,肯定少不了html,css,js這些前端的東西。本案例非常簡(jiǎn)單。

          只涉及到html。我們這應(yīng)用里面新建templates和stataic文件夾,并在下面分別再建跟我們的應(yīng)用名字一樣的generator文件夾(這一點(diǎn)非常非常重要,否則會(huì)出現(xiàn)找不到圖片和html)。

          然后把我們的漫威的背景圖片放到images下面,在templates/generator/ 下面新建一個(gè)index.html文件,并且改成上上面的內(nèi)容。

          下面我們的視圖就開始跟我們的前端html關(guān)聯(lián)起來(lái)了,所以我們?nèi)グ裿iews里面index的內(nèi)容改一下:


          這個(gè)時(shí)候再刷新一下我們的主頁(yè)(注意后天的python3 manage.py runserver 這個(gè)終端不能關(guān)閉哈),就會(huì)看到頁(yè)面變了。


          4.設(shè)計(jì)我們的主頁(yè)面

          好,我們的主頁(yè)面已經(jīng)成功顯示出來(lái),下面就是在這個(gè)刷完油漆的房子里面開始添置家具,我們主頁(yè)主要是包括了,一個(gè)form表單,表單里面有一個(gè)select文本框,4個(gè)input的checkout,一個(gè)submit的提交按鈕和一個(gè)最后顯示密碼輸出的文本。



          這個(gè)時(shí)候我們?cè)偎⒁幌马?yè)面,我們就看到控件都上頁(yè)面了。


          不過有點(diǎn)丑,我們用戶大名鼎鼎的bootstrap來(lái)美容一下,于是我們修改了一些頁(yè)面:



          我們?cè)趆ead里面增加了bs3的引入,然后在每個(gè)控件上面都增加了css樣式 class來(lái)美容一下,這時(shí)候我們?cè)偎⑿乱幌驴匆幌滦Ч?



          是不是快大功告成了,但是這個(gè)是靜態(tài)的頁(yè)面,還沒有活起來(lái),我們要給它注入靈魂,所以我們要修改我們的views。


          5.修改views增加密碼生成功能

          密碼生成的功能,其實(shí)我以前寫過這樣的腳本,其實(shí)非常簡(jiǎn)單主要是里面random隨機(jī)函數(shù)進(jìn)行字母的組合,目前我們大部分的密碼都要去:

          至少有一個(gè)大寫的子母

          至少有一個(gè)小寫的子母

          至少有一個(gè)數(shù)字

          至少有一個(gè)其他的符號(hào),比如#%¥這樣的


          針對(duì)這樣的需求,利用我們深厚的Python功底,很容易就寫好了。代碼如下:


          代碼的邏輯非常簡(jiǎn)單,我就不贅述了,既然密碼生成的算法已經(jīng)好了,我們只需要跟前端的交互鏈接即可。修改views里面的index,增加對(duì)前端表單的提交的響應(yīng)。



          好了,大功告成了,我們一定迫不及待的看一下效果,碼農(nóng)也只有在程序運(yùn)行的那一刻才釋懷。


          點(diǎn)擊,我們的Generator password按鈕就可以不斷的顯示密碼了,大家可以根據(jù)自己的要求在選項(xiàng)里面選擇要帶大寫還是小寫,數(shù)字和特殊字符的密碼。


          最后,說兩句

          應(yīng)用雖然小,但是擴(kuò)展其實(shí)可以非常多,關(guān)鍵是這樣的小應(yīng)用對(duì)小白來(lái)說,非常適合提高興趣和學(xué)習(xí)的積極性。

          好了原創(chuàng)不易,大家看一下這篇只要幾分鐘,但是我這也是花了4個(gè)多小時(shí)的功夫,從創(chuàng)意到代碼到文案的編寫,校驗(yàn),核對(duì),前后花了很多時(shí)間,光圖片就用了28張,真心不易,有的時(shí)候發(fā)發(fā)廣告,養(yǎng)家糊口,也希望大家理解,希望各位鐵粉留言區(qū)多多支持一下哈。

          如果看文案不過癮,需要錄制視頻的,也歡迎在留言區(qū)吱一聲哈。另外,需要源碼,還是老規(guī)矩,后臺(tái)輸入:小助手。找他要,備注:哪一篇文章的,原創(chuàng)500篇了,太多了。




          推薦閱讀:

          入門:?最全的零基礎(chǔ)學(xué)Python的問題? |?零基礎(chǔ)學(xué)了8個(gè)月的Python??|?實(shí)戰(zhàn)項(xiàng)目?|學(xué)Python就是這條捷徑


          Django入門:?30分鐘!用Django做一個(gè)迷你的Todolist!上篇!? |?30分鐘!用Django做一個(gè)迷你的Todolist!下篇!


          量化:?定投基金到底能賺多少錢?? |?我用Python對(duì)去年800只基金的數(shù)據(jù)分析??


          干貨:爬取豆瓣短評(píng),電影《后來(lái)的我們》?|?38年NBA最佳球員分析?|? ?從萬(wàn)眾期待到口碑撲街!唐探3令人失望? |?笑看新倚天屠龍記?|?燈謎答題王?|用Python做個(gè)海量小姐姐素描圖?|碟中諜這么火,我用機(jī)器學(xué)習(xí)做個(gè)迷你推薦系統(tǒng)電影


          趣味:彈球游戲? |?九宮格? |?漂亮的花?|?兩百行Python《天天酷跑》游戲!


          AI:?會(huì)做詩(shī)的機(jī)器人?|?給圖片上色?|?預(yù)測(cè)收入?|?碟中諜這么火,我用機(jī)器學(xué)習(xí)做個(gè)迷你推薦系統(tǒng)電影


          小工具:?Pdf轉(zhuǎn)Word,輕松搞定表格和水??!?|?一鍵把html網(wǎng)頁(yè)保存為pdf!|??再見PDF提取收費(fèi)!?|?用90行代碼打造最強(qiáng)PDF轉(zhuǎn)換器,word、PPT、excel、markdown、html一鍵轉(zhuǎn)換?|?制作一款釘釘?shù)蛢r(jià)機(jī)票提示器!?|60行代碼做了一個(gè)語(yǔ)音壁紙切換器天天看小姐姐!


          年度爆款文案


          點(diǎn)閱讀原文,更多好玩Python!

          瀏覽 65
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美成人片网站啊 | 日韩电影无码一区二区 | 亚洲AⅤ无码一区二区波多野按摩 | 日本猛少妇色XXXXX猛叫 色秘 乱码一区二区三区唱戏 | 99爱在线观看 |