原创 django-rest-framework實現三種分頁

我們通常在使用Django爲前端或者用戶提供接口的時候,時常會遇到返回大量數據信息的情況,比如:有1000條用戶信息,有1000條新聞文章,有1000條商品信息等等。但是我們不可能將所有數據從數據庫獲取後一股腦的全部返回,這樣相當不好,會

原创 Python實現堆棧(列表結構和鏈表結構)

堆棧是一種數據項按序排列的數據結構,具有“後進先出”(LIFO)的特點,堆棧所有的操作都在其頂端執行,在頂端進行插入和移除。 堆棧好比我們常見的羽毛球盒子,一個圓柱體的羽毛球盒子中從上到下裝了很多羽毛球,盒子的開口在頂端,這樣,如果先放入

原创 白話淺談MVC模式

MVC由三部分組成:模型層(model),視圖層(view),控制層(controller)。 其實光從這三部分的名字就可以看出個大概,模型層嘛,肯定是與數據庫有關,視圖層,嗯,視圖,肯定和眼睛看有關,控制層,應該偏向和邏輯掛鉤吧。如果

原创 一個Django導出可定製excel表格的封裝可複用模塊

之前我做的一個Django項目需要導出excel表格,具體場景描述:數據庫中有用戶表,商品表,訂單表等等數據表,每張數據表都有多個字段,而客戶不需要導出所有字段,只需要導出每張表部分字段。基於這樣的場景,我不可能每一張數據表的excel導

原创 Django ORM常用字段類型

在設計模型類時,字段類型的選擇至關重要,對項目的開發,甚至性能都會有影響。下面我列舉出了在Django中,設計模型類時常用的字段類型,以對應MySQL爲例。 自增類型: AutoField   能存儲11個字節的整數,對應MySQL中的i

原创 Django admin配置django-ckeditor

對於內容管理系統而言,富文本編輯器是必不可少的功能組件,在Django自帶的管理後臺admin中,我們可以使用ckeditor,Django有相關的插件(django-ckeditor)可以幫助我們快速的配置完成並使用。 我在這裏舉一個小

原创 解決同源策略限制以實現跨域訪問的兩個方法:JSONP和CORS

同源的定義:同源是指,域名,協議,端口相同。 比如:在下表中找出與 http://www.aaa.com:8888/abc/ 同源的URL URL 結果 原因 http://www.bbb.com:8888/bbb/ 不同源 域名不一致

原创 Django使用Celery實現異步任務

什麼是Celery? Celery是一個簡單、靈活且可靠的,處理大量消息的分佈式系統 專注於實時處理的異步任務隊列 同時也支持任務調度 如圖所示,整個Celery架構由4部分組成:user、broker、workers、task res

原创 遞歸實現斐波那契數列以及詳細解析

什麼是遞歸:函數內部調用函數自身。 什麼是斐波那契數列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89......像這樣的數列,第一個數加第二個數等於第三個數,第二個數加第三個數等於第四個數,以這樣的規律遞推。F

原创 簡述cookie和session機制

首先來說說HTTP協議,我們知道HTTP協議是無狀態的,意思就是說我們每一次發出的HTTP請求之間都是沒有關聯的,對於服務且而言,就算是同一個人在不停的發出HTTP請求訪問網頁,服務器也不知道是同一個人在訪問。 但是在很多網頁中都涉及到了

原创 Linux下安裝virtualenvwrapper

Ubuntu和Centos下安裝幾乎沒有任何區別: 第一步:安裝virtualenvwrapper 命令:pip3 install virtualenvwrapper 安裝建議使用豆瓣源,即:pip3 install virtu

原创 計算機網絡學習筆記(2)——物理層

物理層解決如何在連接各種計算機的傳輸媒體上傳輸數據比特流,而不是指具體的傳輸媒體。 物理層的主要任務描述爲:確定與傳輸媒體的接口的一些特性,即: 機械特性 電氣特性 功能特性 過程特性 通信的目的是傳送消息 數據(data)

原创 Django的models的分層設計(避免循環引用)

在一個Django項目中,通常都會有多個app,在每個app中都有一個models.py文件用來存放相應的模型類(模型類是數據庫表的映射)。而在模型類與模型類之間很有可能會存在某種關聯,比如外鍵關聯,這時,相關聯的模型類很有可能不在同一個

原创 Django ORM的外鍵ForeignKey中的on_delete的參數解析

以兩個模型類爲例,一個是老師類,一個是學生類,學生類通過外鍵關聯老師類,實現一(老師)對多(學生)的關聯。 class Teachers(models.Model): """老師類""" name = models.Ch

原创 計算機網絡學習筆記(7)——網絡安全

安全包括哪些方面: 數據存儲安全 應用程序安全 操作系統安全 網絡安全 物理安全 用戶安全教育 計算機網絡上的通信面臨以下四種威脅: 1.截獲————從網絡上竊聽他人的通信內容 2.中斷————有意中斷他人在網絡上的