Django vue 搭建前后端分离的web 二

2023-10-31

bootstrap的安装和使用:

安装:
在vue项目下使用npm直接安装即可:
由于bootstrap依赖jQuery,所以第一步安装jQuery:
npm install jquery
检查在package.json的dependencies中是否已经存在代码:“jquery”: “x.x.x”
不存在就需要手动添加:“jquery”: “^x.x.x”
在这里插入图片描述

在build文件webpack.base.conf.js中添加两行代码:

const webpack = require('webpack')  //加在文件的变量定义区【文件开头】
module.exports = {
  resolve: {
    extensions: ['.js', '.vue', '.json'],
    alias: {
      'vue$': 'vue/dist/vue.esm.js',
      '@': resolve('src'),
      'jquery': 'jquery' //这里是增加的
    }
  },
  plugins: [
    new webpack.ProvidePlugin({
      $: "jquery",
      jQuery: "jquery",
      "windows.jQuery": "jquery"//这里是增加的
    })
  ],
}

在这里插入图片描述

在main.js中加入如下代码:

import $ from ‘jquery’ ;

在这里插入图片描述

第二步安装bootstrap;
npm install bootstrap@3

在main.js 引入Bootstrap:

使用:

在组件中直接使用样式即可:
在这里插入图片描述

前后端项目通信的实现:开始

MVC模型:
M:model,主要封装对数据库层的访问,实现数据的增、删、改、查等操作;
V:View,用于结果封装生成页面展示给用户看;
C:Controller,用于控制,实现接受请求,完成请求的业务逻辑处理,与Modle和View交互
通过Django编写基于vue,前后端分离的后台接口:

第一步:安装插件,django-rest-framework(DRF)

pip install django-rest-framework

进入后端app目录创建urls.py

第二步:将DRF和sangfor配置到django项目中,打开项目中的settings.py文件,添加:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    # demo add
    'rest_framework',
    'sangfor',
]

第三步:后端项目的路由配置,让访问index/路径时候转到sangfor应用中的urls.py文件配置进行处理

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
...
    path('index/', include('sangfor.urls')), 
] 
 

在这里插入图片描述

第四步:在models.py文件中写简单数据类

from django.db import models

# Create your models here.


class Sangfor(models.Model):
    name = models.CharField(max_length=30)
    author = models.CharField(max_length=30, blank=True, null=True)


class Login(models.Model):
    name = models.CharField(max_length=20, blank=True, null=True)
    passwd = models.CharField(max_length=20, blank=True, null=True)
 

在这里插入图片描述

第五步:在sangfor文件夹中创建serializer.py文件,并写对应序列化器sangforSerializer:

from rest_framework import serializers

from sangfor.models import Sangfor
from sangfor.models import Login


class SangforSerializer(serializers.ModelSerializer):
    class Meta:
        model = Sangfor
        fields = '__all__'


class LoginSerializer(serializers.ModelSerializer):
    class Meta:
        model = Login
        fields = '__all__'

第六步:在views.py文件中写对应的视图集SangforViewSet来处理请求:

from django.shortcuts import render

# Create your views here.
from rest_framework import viewsets


# from books.models import Books.
from sangfor.models import Sangfor
from sangfor.models import Login

# from books.serializer import BooksSerializer
from sangfor.serializer import SangforSerializer
from sangfor.serializer import LoginSerializer


class SangforViewSet(viewsets.ModelViewSet):
    queryset = Sangfor.objects.all()
    serializer_class = SangforSerializer


class LoginViewSet(viewsets.ModelViewSet):
    queryset = Login.objects.all()
    serializer_class = LoginSerializer

第七步:在urls.py文件中写对应的路由映射:

from django.urls import path, include
from rest_framework.routers import DefaultRouter


from sangfor import views


router = DefaultRouter()
router.register('sangfor', views.SangforViewSet)
router.register('login', views.LoginViewSet)

urlpatterns = [
    path('', include(router.urls)),
]

第八步:检查后端接口效果:

命令行运行:
python manage.py makemigrations
python manage.py migrate
python manage.py runserver

请求相应接口:
如:http://127.0.0.1:8000/index/sangfor/
http://127.0.0.1:8000/index/login/
出现如下操作界面说明后台接口没有问题:

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django vue 搭建前后端分离的web 二 的相关文章

  • 通过另一个指标数据框评估一个数据框

    我有一个源数据框input df PatientID KPI Key1 KPI Key2 KPI Key3 0 1 C602 C603 C601 NaN 1 2 C605 C606 C602 NaN 2 3 75 L239 C602 NaN
  • pandas DataFrame:获取上个月缺少交易且无法移位()的值

    有没有办法在不生成虚拟行的情况下实现这一点 这是我的数据源 Group Store Month Revenue Group1 A 201611 10 Group1 A 201612 20 Group1 A 201701 30 Group1
  • 检查时间戳列是否在另一个数据帧的日期范围内

    我有一个数据框 df A 有两列 amin 和 amax 这是一组时间范围 我的目标是查找 df B 中的列是否位于 df A amin 和 amax 列中范围的任何行之间 df A amin amax amin amax 0 2016 0
  • Heroku 上的 Django 应用程序在一段时间后删除对象

    我编写了一个简单的 Django 问答论坛应用程序并将其部署在 Heroku 上 该网站的本地版本运行良好 但是 生产版本不会将问题 答案等存储超过几个小时 我决定坚持使用 Django 附带的 sqlite3 我预计该网站不会有太多流量
  • Python int和float在64位系统中的内存消耗

    我正在 Python 3 4 的 64 位系统中尝试以下代码 以了解不同原始数据类型的内存消耗 import sys print sys getsizeof 45 prints 28 print sys getsizeof 45 2 pri
  • 使用 scikit-learn 在朴素贝叶斯分类器中混合类别数据和连续数据

    我正在使用 Python 中的 scikit learn 开发分类算法来预测某些客户的性别 除此之外 我想使用朴素贝叶斯分类器 但我的问题是我混合了分类数据 例如 在线注册 接受电子邮件通知 等 和连续数据 例如 年龄 长度 会员资格 等
  • 当类的任何属性被修改时,类如何运行某些函数?

    是否有一些通用方法可以让类在以下情况下运行函数 any它的属性被修改了吗 我想知道是否可以运行某些子进程来监视类的更改 但也许有一种方法可以继承class并修改一些on change函数是 Python 类的一部分 有点像默认的 repr
  • argparse - 禁用相同参数的出现

    我正在尝试使用 argparse 禁用一个命令行中出现相同的参数 python3 argument1 something argument2 argument1 something else 这意味着这应该会引发错误 因为 argument
  • ImportError:无法导入名称 GstRtspServer,未找到内省类型库

    我目前正在尝试让一个简单的 GstRtspServer 程序在外部亚马逊 Linux EC2 服务器上运行 但在让它实际运行时遇到了严重的问题 无论我做什么 当我尝试运行它时 即使程序仅减少到 import gi gi require ve
  • Netmiko OSError:在 send_command 中从未检测到搜索模式:

    我被这个错误困住了 任何人都可以帮助摆脱这个错误 import netmiko Device host xxxxxxxxxx device type cisco nxos username admin password xxxxxxxx c
  • argparse add_argument 别名

    有没有办法使用 argparse 创建别名 例如 我想做这样的事情 parser add argument foo parser add argument alias bar foo 也就是说 使用 bar应该相当于使用 foo 您可以简单
  • sqlalchemy,使用反向包含(不在)子列值列表中进行选择

    我在flask sqlalchemy 中有一个典型的帖子 标签 与一篇帖子相关的许多标签 关系 并且我想选择我提供的列表中未标记任何标签的帖子 首先 我建立的模型 class Post db Model id db Column db In
  • PyGTK TreeView 中的自动换行

    如何在 PyGTK TreeView 中自动换行文本 gtk TreeView 中的文本是使用 gtk CellRendererText 渲染的 文本换行归结为在单元格渲染器上设置正确的属性 为了让文本换行 您需要设置wrap width单
  • SQLAlchemy 是否会从同一连接重置 SQLAlchemy 会话之间的数据库会话?

    SQLAlchemy 利用连接池 这意味着相同的连接可以在不同的 SQLAlchemy 会话之间重复使用 但是 单个 SQLAlchemy 会话包含在其自身内并在关闭后被丢弃 然而 连接保持 活动 状态 我想使用 set config 将一
  • 如何更改Python中的全局变量[重复]

    这个问题在这里已经有答案了 我正在尝试更改程序中的变量 我在程序开始时声明了一个全局变量 我想在程序中的不同函数中更改该变量 我可以通过再次声明函数内的变量来做到这一点 但我想知道是否有更好的方法来做到这一点 下面是一些测试代码来解释我的意
  • Django populate() 不可重入

    当我尝试在生产环境中加载 Django 应用程序时 我不断收到此消息 我尝试了所有的 stackoverflow 答案 但没有任何解决办法 任何其他想法 我使用的是 Django 1 5 2 和 Apache Traceback most
  • 使用 python pyad 访问对象 [] 时出现问题

    我在尝试使用 pyad 访问活动目录用户属性时遇到问题 这是我的代码 user pyad aduser ADUser from cn tuser print user get attribute lastLogonTimestamp 这些是
  • WTforms 表单未提交但不输出验证错误

    我正在尝试使用以下方式上传文件flask uploads工作和遇到一些障碍 我会告诉你我的flask查看函数 html 希望有人能指出我缺少的内容 基本上发生的情况是我提交了表格但失败了if request method POST and
  • 在 kivy 中嵌套小部件

    我正在尝试在 kivy 中制作一个界面 我认为即使在完成教程之后 我仍然不了解自定义小部件以及如何对它们进行层次结构的一些基本知识 我认为我有更多的盒模型 html 思维方式 因此小部件嵌套在本机 GUI 中的方式对我来说仍然有点陌生 一些
  • 使用自定义层运行 Keras 模型时出现问题

    我目前正在攻读学士学位论文FIIT STU https www fiit stuba sk en html page id 749 其主要目标是尝试复制和验证以下结果study http arxiv org abs 2006 00885 这

随机推荐

  • JavaScript 中有趣的 9 个常用编码套路

    set对象 数组快速去重 常规情况下 我们想要筛选唯一值 一般会想到遍历数组然后逐个对比 或者使用成熟的库比如lodash之类的 不过 ES6带来了一个新玩意儿 它引入了一个全新的对象类型 Set 而且 如果结合上 展开运算符 我们可以超级
  • React 阻止默认事件和阻止冒泡

    给 a 标签添加一个事件 阻止默认事件 e preventDefault class view extends Component onAtag e 阻止默认事件 放置跳转 e preventDefault console log 烦烦烦滚
  • 防病毒服务器维护记录表,机房巡检记录表.doc

    机房巡检记录表 机房日常巡检记录表 值班人 值班时间 机房环境 检查项 结论 备注 检查项 结论 备注 温度 正常 异常 湿度 正常 异常 痕迹 正常 异常 清洁 正常 异常 异响 正常 异常 异味 正常 异常 门窗 正常 异常 照明 正常
  • noip模拟赛

    T1 给一个01矩阵 求一个最大子矩阵 矩阵内的和不超过k k leq n 2 n leq 500 sol O n 4 枚举左上角和右下角 发现后两维有单调性 可以用一个滑窗来搞 但其实非常优秀的枚举3个坐标然后二分第四个坐标的 O n 3
  • 黑盒白盒测试的区别

    一 黑盒测试 Black box Testing 黑盒测试也称功能测试 测试中把被测的软件当成一个黑盒子 不关心盒子的内部结构是什么 只关心软件的输入数据与输出数据 不看软件代码 只对功能进行测试 对软件进行操作 观察结果是否和我们想象的一
  • 【Python数据挖掘课程】五.线性回归知识及预测糖尿病实例

    今天主要讲述的内容是关于一元线性回归的知识 Python实现 包括以下内容 1 机器学习常用数据集介绍 2 什么是线性回顾 3 LinearRegression使用方法 4 线性回归判断糖尿病 前文推荐 Python数据挖掘课程 一 安装P
  • Ubuntu 20.04换国内源

    ubuntu默认的源是国处的源 更新下载速度较慢 因此安装好ubuntu20 04之后 将其源更新为国内的源 步骤如下 1 备份原始的源 源的路径 etc apt sources list 备份操作 cd etc apt cp source
  • 【电工技术】期末复习题

    1 电路是为实现人们的某种需求 由 电源 中间环节和负载三部分按一定方式组合起来 使电流流通的整体 2 在使用叠加定理对电路进行分析时 通常要对电源作除源处理 处理方法是将各个理想电压源 短接 将各个理想电流源 开路 3 利用戴维宁定理可以
  • 分析冰蝎三流量特征以及请求包

    1 使用wireshark获取冰蝎流量 首先在冰蝎中执行命令 捕捉流量 流量特征 可以看Accept字段的值 冰蝎脚本的这个请求值比较固定 还可以看user agent这个字段的值 还可以看content的值 2 分析流量 将数据包内容复制
  • 关于有些网站访问不了的问题

    1 网络攻击导致的 先要确定是不是仅仅一个用户的网页打不开 如果是一个用户的网页打不开 非常可能是这个网站的代码有问题 或许是域名没有分析好等原因 如果是大无数用户或全部用户的网页打不开 首要确定是不是攻击以致的 因为攻击有非常多种 例如C
  • 面试了一个00后,绝对能称为是内卷届的天花板

    前言 公司前段缺人 也面了不少测试 结果竟然没有一个合适的 一开始瞄准的就是中级的水准 也没指望来大牛 提供的薪资也不低 面试的人很多 但平均水平很让人失望 令我印象最深的是一个00后测试员 他技术基础方面确实还不错 面试也表现的非常自信
  • rsync服务

    文章目录 rsync简介 rsync特性 rsync的ssh认证协议 rsync命令 rsync简介 rsync是可以实现增量备份的工具 配合任务计划 rsync能实现定时或间隔同步 配合inotify或sersync 可以实现触发式的实时
  • 新一代树莓派 Raspberry Pi 2 性能测试之软件无线电追踪飞机信息

    新一代树莓派 Raspberry Pi 2 性能测试之软件无线电追踪飞机信息 转载自zza1003169 2015年02月28日 于 开源杂志 发表 安装开源软件无线电 GNU Radio 用电视棒追踪飞机轨迹 众所周知 树莓派 Raspb
  • Discuz!教程之当插件、门户或自定义页面设置成首页时手机版访问跳转到forum.php?mobile=yes的问题

    最近由于项目需要 将自定义单页设置为网站首页 测试过程中一直发现手机版无法访问 被强制跳转到了forum php mobile yes页面 仔细查看了一下Discuz 代码 source class discuz discuz applic
  • 免费python课程排行榜-重庆Python培训机构排行榜

    重庆千锋python全栈开发培训 0基础教学 带你玩转python开发 30天直追年薪20万 快速咨询 Python是一种非常强大的计算机语言 你可能已经听说过很多种流行编程语言 比如非常难学的C语言 非常流行的Java语言 适合初学者的B
  • Apollo如何通知/订阅主题topic

    转自 https blog csdn net u012423865 article details 80024870 How to advertise and subscribe a topic 导读 众所周知 Apollo是基于ROS开发
  • Qt5下串口对高频率自发性数据的接收及处理方法

    在项目中需要用Qt5 9采集仪表中的数据 仪表是以200Hz的频率主动向外连续发送数据 发送频率很高 而且主动发送 不需要软件发送一次 再读取一次 而是软件直接读取 这种直接连续读取 有两个关键点 1 如何从接收buffer里面查找出所需的
  • React:refs转发和useImperativeHandle

    具体的使用范例 可以参考官方API Refs转发 本人也是看了官方API以后自己所学习理解领悟的给记录一下 如果有不正确的地方 可以在文章下方的评论区参与评论 然后指正出来 欢迎各位来评论吧 refs是用来绑定元素的 一定要注意 React
  • Excel导出级联下拉功能实现

    效果如下 直接上代码 自己看 工具类 import cn hutool core util ObjectUtil import com alibaba fastjson JSONObject import lombok extern slf
  • Django vue 搭建前后端分离的web 二

    bootstrap的安装和使用 安装 在vue项目下使用npm直接安装即可 由于bootstrap依赖jQuery 所以第一步安装jQuery npm install jquery 检查在package json的dependencies中