Django 基础教程

Django 查询

Django 展示数据

Django Admin

Django 模板

Django 表单组件

Django 高级

Django FAQ

vue怎么和django对接


Vue.js 和 Django 集成

Vue.js 是一个前端 JavaScript 框架,而 Django 是一个后端 Python web 框架。要将 Vue.js 与 Django 集成,有几种不同的方式。以下是实现集成的主要方法,包含简要的说明和每种方法的示例代码。

分离前后端应用

在这种方式下,你将 Vue.js 前端和 Django 后端作为独立的应用程序,可以部署在不同的服务器或域上。前端应用通过 API 端点与后端通信。

示例代码:

Django 后端(views.py):

from django.http import JsonResponse

def get_data(request):
    data = {'message': 'Hello from Django!'}
    return JsonResponse(data)

Vue.js 前端(组件的 script 部分):

export default {
  data() {
    return {
      message: '',
    };
  },
  mounted() {
    fetch('/api/get_data/')
      .then(response => response.json())
      .then(data => {
        this.message = data.message;
      });
  },
};

Django 模板与 Vue.js 组件

在这种方式下,你可以使用 Django 模板渲染初始页面,然后通过 Vue.js 组件添加动态功能。你可以使用独立的 Vue.js 模式或通过 Webpack 等模块打包器来使用 Vue.js。

示例代码:

Django 模板(index.html):

{% load static %}
<html>
<head>
  <!-- 引入 Vue.js 库 -->
  <script src="{% static 'vue.js' %}"></script>
</head>
<body>
  <div id="app">
    <!-- Vue.js 组件元素 -->
    <my-component></my-component>
  </div>

  <!-- Vue.js 组件定义 -->
  <script src="{% static 'my-component.js' %}"></script>
</body>
</html>

Vue.js 组件(my-component.js):

Vue.component('my-component', {
  data() {
    return {
      message: 'Hello from Vue.js!',
    };
  },
  template: '<div>{{ message }}</div>',
});

Django Rest Framework 与 Vue.js

如果你想要使用 Vue.js 构建单页面应用(SPA),并将 Django 作为后端 API 服务器,你可以使用 Django Rest Framework(DRF)创建 API 端点。

示例代码:

Django 后端(views.py,使用 DRF):

from rest_framework.decorators import api_view
from rest_framework.response import Response

@api_view(['GET'])
def get_data(request):
    data = {'message': 'Hello from Django API!'}
    return Response(data)

Vue.js 前端(组件的 script 部分):

export default {
  data() {
    return {
      message: '',
    };
  },
  mounted() {
    fetch('/api/get_data/')
      .then(response => response.json())
      .then(data => {
        this.message = data.message;
      });
  },
};

结论

将 Vue.js 与 Django 集成,让你能够构建现代化、动态的 Web 应用程序,并搭配强大的后端。你可以根据项目的需求和复杂性选择适合的集成方式。无论是保持分离还是通过 Django 模板或 Django Rest Framework 将它们结合在一起,Vue.js 和 Django 的集成为 Web 开发带来了无限的可能性。

在这个例子中,我将展示如何创建一个基本的Django-Vue管理界面,其中Django作为后端API,而Vue.###步骤1:Django后 ...
Vue和Django确实是不同的技术,但它们可以在一起使用,特别是在构建现代Web应用程序时,它们之间有一些关联。DjangoDjango是 ...
在PyCharm中设置Django项目涉及配置解释器、创建项目、设置数据库连接等步骤。配置数据库连接,例如使用SQLite:###示例代码创 ...
Django和Flask都是流行的PythonWeb框架,用于开发Web应用程序。*Flask:Flask被设计为一个微框架,它提供了基本的 ...
jsDjangoRESTframework(DRF)是一个功能强大的工具包,用于在Django应用中构建API,而Vue.js项目:安装Ax ...