首頁 web前端 js教程 Vue.js和Django搭建前後端分離專案範例詳解

Vue.js和Django搭建前後端分離專案範例詳解

May 18, 2018 pm 04:17 PM
django javascript vue.js

本篇文章主要介紹了Django+Vue.js搭建前後端分離項目的範例,具有一定參考價值,有興趣的可以了解一下

在寫這篇文章的時候,順帶學習了一下關於Markdown的使用方法。

筆者是個渣渣,一切都是自己在摸索的學著,所以也談不上什麼體系、系統學習。這裡主要是為了實現把專案前後端分離開。

這裡假設你的電腦上所需的django、vue.js已經有了,如果沒有,往下拉就是vue.js的安裝流程。 django前面寫了,就不贅述了。

一,正常建置前後端分離專案流程

#1.建立django專案

指令:

django-admin startproject ulb_manager
登入後複製

結構:

├── manage.py
└── ulb_manager
  ├── __init__.py
  ├── settings.py
  ├── urls.py
  └── wsgi.py
登入後複製

2.進入專案根目錄,建立一個app作為專案後端

指令:

cd ulb_manager
python manage.py startapp backend
登入後複製

結構比上面最基本的,多了一塊backend

3.使用vue-cli建立一個vue.js專案作為專案前端

指令:

vue-init webpack frontend
登入後複製

介面:

Project name:(預設回車鍵)

Project description:(預設回車鍵)

#Auther:(輸入自己的名字,隨便)

...:(預設yes和回車鍵,暫時不太懂,剛開始接觸,網路上也沒查到這一塊東西,就全部選擇預設或Yes了)

結構多了一塊frontend

結構總結:

專案根目錄有兩個新資料夾,一個叫backend,一個叫frontend,分別是:backend Django的一個app、frontend Vue.js專案

4.使用webpack打包Vue.js專案

指令:

cd frontend
npm install
npm run build
登入後複製

5.使用Django的通用視圖TemplateView

#在專案根目錄下urls.py(即ulb_manager/urls.py)使用通用視圖建立最簡單的模板控制器。

#程式碼:

urlpatterns = [
  url(r'^admin/', admin.site.urls),
  url(r'^$',TemplateView.as_view(template_name="index.html")),
  #url(r'^api/',include('backend.urls', namespace='api'))
  #最后一行代码我注释掉,因为运行报错:Error:No module named 'backend.urls',暂时解决不掉,但是我运行的时候,注释掉这行代码,是能正常运行的。
]
登入後複製

6.設定Django專案的範本搜尋路徑

開啟settings.py(即ulb_manager/settings.py )找到TEMPLATES配置項,修改如下:

TEMPLATES = [
  {
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    #'DIRS': [],
    'DIRS':['frontend/dist'],
    'APP_DIRS': True,
    'OPTIONS': {
      'context_processors': [
        'django.template.context_processors.debug',
        'django.template.context_processors.request',
        'django.contrib.auth.context_processors.auth',
        'django.contrib.messages.context_processors.messages',
      ],
    },
  },
]
登入後複製

PS:之前學習django,是要在settings.py下的INSTALLED_APPS配置項下添加app的,所以我自己添加了'backend'。

7.設定靜態檔案搜尋路徑

#開啟settings.py(ulb_manager/settings.py),找到STATICFILES_DIRS設定項,設定如下:

# Add for vue.js
STATICFILES_DIRS = [
  os.path.join(BASE_DIR, "frontend/dist/static"),
]
登入後複製

如果沒有,自己加。

到這裡,執行django專案已經可以正常運作了。正常運作的介面如下:

運行介面

二,安裝vue.js

如果電腦上,沒有vue.js,以下是安裝vue.js的過程:

1.node.js

##vue.js的建議安裝環境是node.js,因此,我是先安裝的node.js。


登陸node.js官網,下載最新的v6.11.1版本。

2.npm

整合於Node.js中,不需要裝。

3.cnpm

在命令列中輸入指令:

npm install -g cnpm --registry=http://registry.npm.taobao.org
登入後複製

等待安裝完成。

4.安裝vue-cli腳手架建置工具

在命令列中輸入指令:

npm install -g vue-cli
登入後複製
等待安裝結束。

到此,vue-cli已經安裝完成。

PS:暫時摸不清楚如何把檔案的目錄樹結構在Markdown寫出來。


有修改,因為完全按照原版搬上來根本無法運作。寫了一個最基本的框架。像個無頭蒼蠅一樣…(而且也買不起雲主機…新手也沒必要買)

Markdown用起來覺得很自由,而且還能呼叫一些html的指令,還蠻有意思的,雖然還沒摸清楚,到底能呼叫多少、哪些指令…

以上是Vue.js和Django搭建前後端分離專案範例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Django vs. Flask:Python Web框架的比較分析 Django vs. Flask:Python Web框架的比較分析 Jan 19, 2024 am 08:36 AM

Django和Flask都是PythonWeb框架中的佼佼者,它們都有著自己的優點和適用場景。本文將對這兩個框架進行比較分析,並提供具體的程式碼範例。開發簡介Django是一個全功能的Web框架,它的主要目的是為了快速開發複雜的Web應用。 Django提供了許多內建的功能,例如ORM(物件關聯映射)、表單、認證、管理後台等。這些功能使得Django在處理大型

Django框架的優點和缺點:您需要知道的一切 Django框架的優點和缺點:您需要知道的一切 Jan 19, 2024 am 09:09 AM

Django是一個完整的開發框架,該框架涵蓋了Web開發生命週期的各個方面。目前,這個框架是全球最受歡迎的Web框架之一。如果你打算使用Django來建立自己的Web應用程序,那麼你需要了解Django框架的優點和缺點。以下是您需要知道的一切,包括具體程式碼範例。 Django優點:1.快速開發-Djang可以快速開發Web應用程式。它提供了豐富的庫和內

如何升級Django版本:步驟與注意事項 如何升級Django版本:步驟與注意事項 Jan 19, 2024 am 10:16 AM

如何升級Django版本:步驟和注意事項,需要具體程式碼範例引言:Django是一個功能強大的PythonWeb框架,它持續地進行更新和升級,以提供更好的效能和更多的功能。然而,對於使用較舊版Django的開發者來說,升級Django可能會面臨一些挑戰。本文將介紹如何升級Django版本的步驟和注意事項,並提供具體的程式碼範例。一、備份項目檔案在升級Djan

簡易JavaScript教學:取得HTTP狀態碼的方法 簡易JavaScript教學:取得HTTP狀態碼的方法 Jan 05, 2024 pm 06:08 PM

JavaScript教學:如何取得HTTP狀態碼,需要具體程式碼範例前言:在Web開發中,經常會涉及到與伺服器進行資料互動的場景。在與伺服器進行通訊時,我們經常需要取得傳回的HTTP狀態碼來判斷操作是否成功,並根據不同的狀態碼來進行對應的處理。本篇文章將教你如何使用JavaScript來取得HTTP狀態碼,並提供一些實用的程式碼範例。使用XMLHttpRequest

Django是前端還是後端?一探究竟! Django是前端還是後端?一探究竟! Jan 19, 2024 am 08:37 AM

Django是一個由Python編寫的web應用框架,它強調快速開發和乾淨方法。儘管Django是web框架,但要回答Django是前端還是後端這個問題,需要深入理解前後端的概念。前端是指使用者直接和互動的介面,後端是指伺服器端的程序,他們透過HTTP協定進行資料的互動。在前端和後端分離的情況下,前後端程式可以獨立開發,分別實現業務邏輯和互動效果,資料的交

在PyCharm中怎樣使用Django框架創建項目 在PyCharm中怎樣使用Django框架創建項目 Feb 19, 2024 am 08:56 AM

如何在PyCharm中利用Django框架創建專案的技巧,需要具體程式碼範例Django是一款功能強大的PythonWeb框架,它提供了一系列用於快速開發Web應用程式的工具和功能。而PyCharm則是Python開發的一款整合開發環境(IDE),提供了一系列方便的功能和工具來增加開發效率。結合Django和PyCharm,在創建專案方面,可以更加快速、方便

Django:前端和後端開發都能搞定的神奇框架! Django:前端和後端開發都能搞定的神奇框架! Jan 19, 2024 am 08:52 AM

Django:前端和後端開發都能搞定的神奇框架! Django是一個高效、可擴展的網路應用程式框架。它能夠支援多種Web開發模式,包括MVC和MTV,可以輕鬆地開發出高品質的Web應用程式。 Django不僅支援後端開發,還能夠快速建構出前端的介面,透過模板語言,實現靈活的視圖展示。 Django把前端開發和後端開發融合成了一種無縫的整合,讓開發人員不必專門學習

如何在JavaScript中取得HTTP狀態碼的簡單方法 如何在JavaScript中取得HTTP狀態碼的簡單方法 Jan 05, 2024 pm 01:37 PM

JavaScript中的HTTP狀態碼取得方法簡介:在進行前端開發中,我們常常需要處理與後端介面的交互,而HTTP狀態碼就是其中非常重要的一部分。了解並取得HTTP狀態碼有助於我們更好地處理介面傳回的資料。本文將介紹使用JavaScript取得HTTP狀態碼的方法,並提供具體程式碼範例。一、什麼是HTTP狀態碼HTTP狀態碼是指當瀏覽器向伺服器發起請求時,服務

See all articles