python - Django中如何使用異步
問題描述
有個views中的return render需要等待數(shù)據(jù)庫時間長,所以想問問怎么去實現(xiàn),把 templates先展示出來。然后等待數(shù)據(jù)的加入,之前有看過這樣的文章,但是現(xiàn)在想找,卻找不到。可能表達(dá)錯了。
如果上面的可能不能這樣異步做,那么下面這個情況:有個頁面,在頁面加載的時候會有個一個前端異步去請求數(shù)據(jù),這個數(shù)據(jù)和這個頁面上的數(shù)據(jù)無關(guān),但是需要根據(jù)這個頁面的數(shù)據(jù)做動態(tài)的展示。比較貼近的是top統(tǒng)計。比如就是top統(tǒng)計,那么我在這個頁面加載之前的views就異步出top的結(jié)果,等待前端異步來加載。這個怎么來實現(xiàn)。希望貼一下,簡單的views中異步代碼。(異步小白)兩個問題都是希望現(xiàn)在加載templates。
python 2.7謝謝
問題解答
回答1:我覺得你需要的是前端的ajax, 具體的用法,可以去谷歌下, 這個是常用的異步請求數(shù)據(jù)的手段. 當(dāng)有用戶訪問時, template可以暫時返回臨時的數(shù)據(jù), 或者一部分?jǐn)?shù)據(jù), 當(dāng)頁面加載完后, 或者監(jiān)聽滾動條到頁面底部時, 觸發(fā)ajax去請求新數(shù)據(jù), 再用js重新繪制相應(yīng)的頁面元素出來. 當(dāng)然你也可以用一些優(yōu)秀的前端框架, 例如vue.js或者agular.js, 這些都是專門解決你這種需求的方案
相關(guān)文章:
1. 關(guān)于nginx location配置的問題,root到底是什么2. docker鏡像push報錯3. angular.js - angular內(nèi)容過長展開收起效果4. 關(guān)于docker下的nginx壓力測試5. angular.js - angularjs的自定義過濾器如何給文字加顏色?6. python 怎樣用pickle保存類的實例?7. 大家好,請問在python腳本中怎么用virtualenv激活指定的環(huán)境?8. python的前景到底有大?如果不考慮數(shù)據(jù)挖掘,機(jī)器學(xué)習(xí)這塊?9. 并發(fā)模型 - python將進(jìn)程池放在裝飾器里為什么不生效也沒報錯10. python2安裝失敗
