一步一步:Vue3+Django4全棧項(xiàng)目實(shí)現(xiàn)步驟
隨著Web開發(fā)的不斷發(fā)展,全棧開發(fā)逐漸成為了趨勢(shì)。Vue和Django作為前后端開發(fā)中最受歡迎的技術(shù)棧之一,他們的組合也是十分強(qiáng)大的。在本文中,我們將一步一步地介紹如何使用Vue3和Django4實(shí)現(xiàn)一個(gè)全棧項(xiàng)目。
- 準(zhǔn)備工作
首先,我們需要在本地安裝Node.js和Python,以及相應(yīng)的包管理器npm和pip。同時(shí),我們也需要一個(gè)集成開發(fā)環(huán)境(IDE),比如VS Code。
創(chuàng)建Django項(xiàng)目
打開終端,進(jìn)入你希望創(chuàng)建項(xiàng)目的目錄,執(zhí)行以下命令來(lái)創(chuàng)建Django項(xiàng)目:
django-admin startproject myproject
登錄后復(fù)制
創(chuàng)建Django應(yīng)用
進(jìn)入項(xiàng)目目錄,執(zhí)行以下命令來(lái)創(chuàng)建一個(gè)Django應(yīng)用:
cd myproject python3 manage.py startapp myapp
登錄后復(fù)制
配置Django數(shù)據(jù)庫(kù)
打開settings.py文件,配置數(shù)據(jù)庫(kù)信息,比如使用SQLite:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}
登錄后復(fù)制
創(chuàng)建數(shù)據(jù)庫(kù)模型
在models.py文件中定義你的數(shù)據(jù)庫(kù)模型。比如,我們創(chuàng)建一個(gè)User模型:
from django.db import models class User(models.Model): name = models.CharField(max_length=100) email = models.EmailField() password = models.CharField(max_length=100)
登錄后復(fù)制
執(zhí)行數(shù)據(jù)庫(kù)遷移
運(yùn)行以下命令來(lái)執(zhí)行數(shù)據(jù)庫(kù)遷移:
python3 manage.py makemigrations python3 manage.py migrate
登錄后復(fù)制
創(chuàng)建Django視圖
在views.py文件中編寫你的Django視圖函數(shù)。比如,我們創(chuàng)建一個(gè)獲取所有用戶的視圖函數(shù):
from django.shortcuts import render
from django.http import JsonResponse
from .models import User
def get_users(request):
users = User.objects.all()
data = [{'name': user.name, 'email': user.email} for user in users]
return JsonResponse({'users': data})
登錄后復(fù)制
創(chuàng)建Vue項(xiàng)目
在終端中,進(jìn)入你希望創(chuàng)建Vue項(xiàng)目的目錄,執(zhí)行以下命令來(lái)創(chuàng)建Vue項(xiàng)目:
vue create myproject
登錄后復(fù)制
配置Vue代理
在myproject/vue.config.js文件中配置Vue的代理,將請(qǐng)求代理到Django后端:
module.exports = {
devServer: {
proxy: {
'^/api': {
target: 'http://localhost:8000',
changeOrigin: true
}
}
}
}
登錄后復(fù)制
創(chuàng)建Vue組件
在src/views目錄下創(chuàng)建一個(gè)Users.vue組件,用于顯示用戶列表:
<template>
<div>
<ul>
<li v-for="user in users" :key="user.name">
{{ user.name }} - {{ user.email }}
</li>
</ul>
</div>
</template>
<script>
export default {
data() {
return {
users: []
}
},
created() {
this.getUsers()
},
methods: {
getUsers() {
axios.get('/api/users')
.then(response => {
this.users = response.data.users
})
}
}
}
</script>
登錄后復(fù)制
配置Vue路由
在src/router/index.js文件中配置Vue的路由,將Users.vue組件作為一個(gè)路由:
import Vue from 'vue'
import VueRouter from 'vue-router'
import Users from '../views/Users.vue'
Vue.use(VueRouter)
const routes = [
{
path: '/',
name: 'Users',
component: Users
}
]
const router = new VueRouter({
mode: 'history',
base: process.env.BASE_URL,
routes
})
export default router
登錄后復(fù)制
運(yùn)行項(xiàng)目
分別在Django和Vue的根目錄下執(zhí)行以下命令來(lái)運(yùn)行項(xiàng)目:
python3 manage.py runserver npm run serve
登錄后復(fù)制
現(xiàn)在,你可以在瀏覽器中訪問http://localhost:8080來(lái)查看你的全棧項(xiàng)目了。Users組件將從Django后端獲取數(shù)據(jù),并顯示在頁(yè)面上。
總結(jié):
通過上述的步驟,我們成功地實(shí)現(xiàn)了一個(gè)使用Vue3和Django4的全棧項(xiàng)目。通過將前端和后端的開發(fā)整合在一起,我們可以更高效地開發(fā)出功能強(qiáng)大的Web應(yīng)用程序。希望本文對(duì)你有所幫助,讓你更好地熟悉Vue和Django的全棧開發(fā)過程。
以上就是一步一步:Vue3+Django4全棧項(xiàng)目實(shí)現(xiàn)步驟的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注www.92cms.cn其它相關(guān)文章!






