搭建一個簡單Django+vue 項目

簡介:

Django是python的web開發框架,採用了MTV的框架模式,即模型Model,視圖View和模版Template。

各自的職責爲:

  1. 模型(Model),即數據存取層:如何存取、如何驗證有效性、包含哪些行爲以及數據之間的關係等;
  2. 模板(Template),即表現層:如何在頁面或其他類型文檔中進行顯示;
  3. 視圖(View),即業務邏輯層:存取模型及調取恰當模板的相關邏輯,模型與模板的橋樑

Vue則是一套用於構建用戶界面的漸進式JavaScript框架,且非常容易與其它庫或已有項目整合。

流程圖解爲:

主要步驟爲:

1. 創建django項目:django-admin startproject appname(appname爲你想要創建的項目名)

2. 進入項目根目錄,創建一個app作爲項目後端:

cd appname

python manage.py startapp childname(childname爲app名)        

3. 使用vue-cli創建一個vuejs項目作爲項目前端:

vue init webpack vuename(vuename爲前端項目名稱)

此時項目目錄爲:可以看見創建的目錄

4. 配置搜索路徑:

數據庫配置:在settings.py文件中DATABASES,作如下更改:

app的路徑配置:在settings.py文件中將childname寫入INSTALLED_APPS,如圖:

vue路徑配置:在settings.py文件將['vueName/dist']寫入TEMPLATES,如圖:

以及settings.py中的STATICFILES_DIRS如下更改:

運行整個項目時,找到前端打包生成的文件,在appname下的urls.py內添加,且增加url時,要寫入改文件,用來尋找對應函數

5. 書寫文件:

  • 在vuename/src/components新建了一個vue文件,裏面寫自己要實現的界面,並要引入自己使用的接口;
  • 在chilename/下的models.py文件中寫關於數據庫建庫信息,寫好之後,運行:
python manage.py makemigrations childName  讓 Django 知道在模型有一些變更

python manage.py migrate childName  創建表結構;
  • 在chilename/下的views.py文件中寫關於取值,前後端交互的函數;
  • 在vuename/src/下新建一個文件夾api,下新建一個api.js,定義接口方法。

6. 若想在vue中編寫的界面,展示到界面上的話,需要先打包vue文件,打包完成之後,會更新dist文件裏的index.html和static文件夾內容,由於vue不是實時,所以每次更改vue文件時,都需要重新打包文件,若覺得這樣麻煩的話,可以先單純的調整界面,在與後端一起聯調。

打包命令:

cd vuename

npm run build

單純調界面的命令:開始時運行此命令,當界面有調整時,刷新界面,即成爲最新

cd vuename

npm run dev

7. 運行:

前端界面打包之後,啓動:

python manage.py runserver 127.0.0.1:80

ip和端口可以自己定義也可以默認,默認的話,可直接運行:

python manage.py runserver

8. 結果展示:

在這展示一下我自己寫的一個簡單的界面:直接訪問你的ip:端口即可

數據庫數據爲:

這樣的話,一個簡單的Django+vue結合的界面搭建就完成了!

總結:

該種方式很好的實現了前後端代碼分離,降低各功能模塊之間的耦合性,方便變更,更容易重構代碼,項目設置和語法都相對來說比較簡單,可以更快的輸出顯示並且js庫體積更小,可以在實施搭建過程中學到很多。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章