中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Django開發-畢設-一、開啟新項目

發布時間:2020-07-22 10:03:18 來源:網絡 閱讀:1902 作者:正經的青年 欄目:開發技術

    在經歷了使用Java作為后臺不斷的遇到各種離奇的小錯誤之后,我選擇了python作為我的后臺來開發我大學中的最后一個網頁項目。我對Django的感覺就是簡單,大大簡化了開發的時間,最主要的是基于python這種腳本語言,省去了編譯時會遇到的各種小錯誤。下面開始開發記錄。

    首先選擇環境,在這里,我選擇了虛擬機里安裝ubuntu14.04作為后臺,為此虛擬機分配了3GB內存(大一點,要不然卡),兩塊網卡,一塊為了使其聯網,一塊為了與本地進行連接(怕網線突然掉了),IP隨便配,只要能正常通信即可。

Django開發-畢設-一、開啟新項目

Django開發-畢設-一、開啟新項目

    python版本:2.7.6

    Django版本:1.11.8

Django開發-畢設-一、開啟新項目

    參考教程:https://code.ziqiangxuetang.com/django/django-tutorial.html

    安裝軟件過程省略,下面正式開始項目:

    第一步,切換到工作目錄,以后的項目都放在這個目錄中

root@ubuntu:~# cd python/django/

    第二部,使用命令開啟新項目

root@ubuntu:~/python/django# django-admin startproject codeManageAndShare

        在使用了這個命令之后,就會在當前的目錄下生成一個名字為“codeManageAndShare”的目錄,這個就相當于開啟了一個工程,然后這個工程里的每個項目叫做app。進入這個目錄可以看到生成了很多的目錄和文件,其中,有一個和工程名相同的目錄,在這個目錄中有很多的python腳本文件,其中使用最多的是settings.py和urls.py這兩個文件,它們的功能分別是設置和URL導流,例如當需要設置哪些主機可以訪問時要在settings.py中進行設置,當訪問到來時,展示哪些東西,要在urls.py中進行設置。

    第三部,使用命令開啟新app

        在建立了工程之后,要想實現具體的功能,就需要建立項目,建立項目需要使用當前工程目錄下的“manage.py”腳本:

root@ubuntu:~/python/django/codeManageAndShare# python manage.py startapp app_selfPart

        這樣就建立好了一個app(項目),根據名字可以看出,這個項目的功能是建立一個個人模塊,當使用了命令之后,會在當前目錄下生成一個名為“app_selfPart”的新目錄,在這個目錄中也會生成很多的腳本文件,其中使用最多的是“models.py”和“views.py”這兩個腳本文件,功能分別是建立數據庫和建立視圖。

一些命令:

    運行服務端(端口隨意指定,IP這樣寫是為了讓所有IP均可訪問,如果不帶IP默認只有本地可以訪問,還需要在codeManageAndShare目錄中的setting.py中更改AllowHost(將參數改成“"*"”(有引號)即可)):

root@ubuntu:~/python/django/codeManageAndShare# python manage.py runserver 0.0.0.0:8000

    同步數據庫(下面兩條命令挨個執行一遍即可)

        提交更改,生成更改文件:

root@ubuntu:~/python/django/codeManageAndShare# python manage.py makemigrations

        將更改同步到數據庫中:

root@ubuntu:~/python/django/codeManageAndShare# python manage.py migrate


個人的理解

        當服務端運行起來之后,即可在真實機上打開瀏覽器通過IP和端口號進行訪問,訪問的過程是通過瀏覽器發起訪問請求,然后請求到達服務器監聽的8000端口,然后“codeManageAndShare”中的“urls.py”根據“setting.py”開始起作用,根據“urls.py”中配置的類似于正則表達式的東西對請求的URL進行匹配,然后將請求送到匹配成功的app中的“views.py”中進行處理,在“views.py”中事先寫好了一些函數,這些函數規定了對數據進行的處理,函數的參數就是請求的“request”,當處理完成之后,會有一個“return”語句來返回處理的結果,這個處理的結果,目前所知:

    1.渲染一個“templates”目錄中的模板(return render(request,'selfPart.html'))(這個目錄要自己在當前的app下建立,但是尋找的時候會自動的去這個目錄中找),而渲染的過程可以使用函數將從數據庫中取出的參數傳進去(渲染時在模板中使用變量的方法是“{{var}}”)最后將渲染的結果通過return返回給請求;

    2.直接返回文字信息(return JsonResponse("一些文字",safe=False)),這個返回的文字直接可以在瀏覽器中看到;

    3.直接進行重定向(return  HttpResponseRedirect('/selfPart')),當訪問此URL時進行處理,之后重定向到新的URL。

    對于數據庫,上面提到了,使用每個app中的“models.py”腳本,在這個腳本中的內容大致如下圖所示:

Django開發-畢設-一、開啟新項目

        在上面這張圖中可以看到和一般的數據庫sql語言大不相同,我的理解是,Django對我們所熟知的sql語言進行了封裝,將其轉化為了這種類的方式,在這里使用變量的方式定義數據格式,然后就可以在其他腳本或命令行中使用命令來進行對數據庫的處理,例如查找數據就可以直接使用“get”,Django在接收到這些命令之后,自動的將其轉化為“select * from。。。”這樣的sql語句傳到數據庫中執行。過濾就可以直接使用“filter”。使用這些函數之后的數據還是對象,在接下來的處理中更方便,這大大方便了我們的使用和開發。

        還有一個十分有用的功能就是用戶的認證,當我們需要開發登錄模塊的時候,很大的時間要開發認證的部分,例如,一個私人的界面,不可以讓一個沒有登錄的人訪問,或者兩個已經登錄的人所看到的個人頁面應該分別是他們自己的個人頁面,類似這種的功能,Django已經替我們做好了,我們只需要在需要進行認證的app中的views.py腳本中添加修飾器即可,具體的后邊會提到。



以上,都是我根據觀察之后瞎編的!!!



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鄂托克旗| 台安县| 白河县| 安平县| 顺平县| 灵台县| 屯留县| 宁乡县| 溧水县| 眉山市| 靖远县| 且末县| 福鼎市| 玛曲县| 清水河县| 惠安县| 四子王旗| 屏南县| 县级市| 呼和浩特市| 克拉玛依市| 临朐县| 长白| 汉沽区| 汨罗市| 安吉县| 太和县| 百色市| 龙泉市| 时尚| 石渠县| 通许县| 吉木萨尔县| 博罗县| 卢湾区| 吉隆县| 海丰县| 青河县| 胶州市| 陕西省| 开原市|