
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、django實現(xiàn)將views.py中的數(shù)據(jù)傳遞到前端html頁面自學(xué)django已經(jīng)有一周啦,想把自己自學(xué)過程中的每一步都記錄下來,給一些零基自學(xué)django的戰(zhàn)友們一些參考;本次主要內(nèi)容為,用一個實例呈現(xiàn)views.py中的數(shù)據(jù)是如何傳遞到html頁面,并在頁面中展示。我的項目已經(jīng)創(chuàng)建好,我的app為song03apptest。由于我的項目和環(huán)境的相關(guān)配置已經(jīng)配置好,假如是第一天開頭學(xué)習(xí)django的童鞋,請先看我的入門教程,第一個django實例。本文重點在于用實例來解釋views和html前臺頁面的傳遞。1.打開我的app,song03apptest下的views.py編寫views.p
2、y文件,代碼如下:2.配置urls.py,其中song03apptest為我的app名稱代碼如下:3.在templates下創(chuàng)建year_test.html,編寫頁面,內(nèi)容如下:4.運行服務(wù)器,并在掃瞄器中輸入頁面展示如下:點擊后可見在views.py中用法years=range(1997, 2018)生成的列表,頁面效果如下:補充學(xué)問:django views.py 和 html 之間參數(shù)傳遞關(guān)系django中的view部分,就是如何用代碼來與models中定義的字段舉行交互。與傳統(tǒng)mvc分層定義略有不同的是,在django中,view的功能是對頁面哀求舉行響應(yīng)和規(guī)律控制,而頁面內(nèi)容的表示則
3、由django的template模板來完成。我們可以把django的view理解為實現(xiàn)各種功能的python函數(shù),view負(fù)責(zé)接受url配置文件urls.py中定義的url轉(zhuǎn)發(fā)并響應(yīng)處理,當(dāng)django收到哀求之后調(diào)用相應(yīng)的view函數(shù)來完勝利能,article模塊中的views.py文件代碼定義如下:views.py代碼定義這是一段簡潔的python代碼,讓我們看看在這段代碼里面django的函數(shù)做了哪些工作吧:list.objects.all辦法返回news列表中全部的記錄項,django可以按照后臺數(shù)據(jù)庫轉(zhuǎn)換成相應(yīng)的sql語句,在后臺數(shù)據(jù)庫中執(zhí)行并返回查詢結(jié)果。每一條article文章都
4、有item_set屬性,代表news新聞條目中的每一個item項。假如需要設(shè)置查詢條件,也可以用法item_set.filter辦法來返回符合特定要求的item項。render_to_response函數(shù)返回掃瞄器指定的html頁面,頁面為django的template模板,負(fù)責(zé)展示被哀求的頁面內(nèi)容。在view部分的代碼中,已經(jīng)指定了頁面顯示模板為news_report.html。其實,在django工程中創(chuàng)建模板是一件十分便利的事情,下面要在article名目內(nèi)創(chuàng)建這個模板頁面,首先新建一個名為templates的文件夾,然后在這個模板名目里創(chuàng)建所需的news_report.html模板文件
5、,模板的代碼如下:news_report模板代碼普通來說,django的模板代碼和一般的html代碼看上去沒有太大差別,只是添加了django特定的模板標(biāo)志,這些標(biāo)志允許開發(fā)者為django模板添加頁面規(guī)律,比喻說將views.py中render_to_response函數(shù)返回的數(shù)據(jù)庫結(jié)果集顯示在頁面中,django特有的標(biāo)簽在模板頁里以%作為開頭并以%作為結(jié)束。嵌入django模板的變量則以作為開頭并以結(jié)束。在上面的模板代碼里面,用到了標(biāo)志% for news_dict in article_listing %以及% endfor %。這樣的標(biāo)志告知django模板處理機制循環(huán)取出news中
6、的item項輸出在頁面中,在for循環(huán)內(nèi)部,通過article_listing的屬性得到view中對應(yīng)的數(shù)據(jù)項字段的值并顯示每個news項的title標(biāo)題以及news中的item項數(shù)目。當(dāng)django的view和template都已經(jīng)預(yù)備妥善,下面僅需要幾步配置來告知django存儲工程應(yīng)用的模板位置,這需要對配置文件setting.py中的template_dirs項舉行設(shè)置。在本例中加入模板文件"news_report.html"的存儲路徑就可以讓django把對view舉行處理的結(jié)果集通過指定模板返回。根據(jù)本例應(yīng)用的結(jié)構(gòu),template_dirs參數(shù)
7、的內(nèi)容設(shè)置為:這里不要遺忘django需要在路徑的最末尾添加一個逗號。接下來僅需要設(shè)置拜訪article時的url轉(zhuǎn)向地址就可以。打開urls.py文件,在admin后臺管理的轉(zhuǎn)向地址下一行添加如下語句:在這里語段的最末尾,也需要有逗號標(biāo)志段落的結(jié)束。在這里可以看到,django的url轉(zhuǎn)發(fā)設(shè)計的十分簡潔,在配置文件urls.py中對應(yīng)于view的轉(zhuǎn)發(fā)哀求都由兩部分組成,第一部分遵循正則表達式指定相匹配的url地址,其次部分是對應(yīng)在view里面處理轉(zhuǎn)發(fā)哀求的函數(shù)。完成了這些步驟,就可以在指令提醒符下再次啟動django服務(wù)器,看一下上述努力的成績了,在掃瞄器中打開鏈接將會看到新聞列表的返回界面。頁面中顯示了數(shù)據(jù)庫中已添加全部新聞的分類統(tǒng)計信息。值得一提的是,django模板支持多層嵌套,并且每一層都可以用法div+css方式完成布局,可以便利的讓站點頁面遵循統(tǒng)一風(fēng)格,看起來美觀大方。在上述囫圇過程中,對用法django舉行web開發(fā)舉行了初步的介紹。在應(yīng)用中寫的python代碼不過幾十行,比較起來其他的開發(fā)語言,django顯得十分便捷有用,最后再往返顧一下django都協(xié)助我們做了哪些工作吧:通過django的對象關(guān)系映射模型建立了存儲新聞分
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)控測量知識培訓(xùn)班課件
- 二零二五年度房地產(chǎn)項目股份代持與投資管理協(xié)議
- 二零二五年度美發(fā)店員工勞動權(quán)益維護與員工績效評價合同
- 2025年度短視頻劇本創(chuàng)作與拍攝合同
- 二零二五年度冷鏈物流辦公倉庫租賃及倉儲服務(wù)協(xié)議
- 浙江國企招聘2024寧波樞紐建設(shè)開發(fā)有限公司招聘7人筆試參考題庫附帶答案詳解
- 二零二五年度醫(yī)院泌尿外科與醫(yī)療器械創(chuàng)新實驗室合作協(xié)議
- 二零二五年度勞動合同主體變更與員工職業(yè)發(fā)展路徑規(guī)劃合同
- 二零二五年度藥店承包經(jīng)營與藥品安全培訓(xùn)合同
- 二零二五商場合同管理系統(tǒng)操作指南與小時計費服務(wù)規(guī)范
- DB5101-T 71-2020 成都市電動汽車充電設(shè)施 安全管理規(guī)范
- 2025年七臺河職業(yè)學(xué)院高職單招語文2018-2024歷年參考題庫頻考點含答案解析
- 監(jiān)理人員安全培訓(xùn)考試試卷(答案)
- 2025年北京電子科技職業(yè)學(xué)院高職單招職業(yè)技能測試近5年常考版參考題庫含答案解析
- xxx項目財務(wù)評價報告
- 2024年山東交通職業(yè)學(xué)院高職單招語文歷年參考題庫含答案解析
- 團隊賦能培訓(xùn)
- 2025年廣東廣州市黃埔區(qū)第二次招聘社區(qū)專職工作人員高頻重點提升(共500題)附帶答案詳解
- 第一單元第2課《人工智能應(yīng)用》說課稿 2023-2024學(xué)年浙教版(2023)初中信息技術(shù)八年級下冊
- 2025年寫人要抓住特點
- 萬兆小區(qū)方案及實施路徑
評論
0/150
提交評論