python框架django中结合vue进行前后端分离

 更新时间:2022年01月10日 16:20:26   作者:冉姑娘  
本篇将基于Python+Django结合Vue.js前端框架,为大家介绍如何基于这三者的技术栈来实现一个前端后离的Web开发项目。文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

一:创建django项目

django-admin startproject mysite   # 创建mysite项目

django-admin startapp app01# 创建app01应用

二:安装vue

1.首先安装node.js,官网地址:https://nodejs.org/zh-cn/download/

2.使用npm淘宝镜像,避免npm下载速度过慢的问题

npm install -g cnpm --registry=https://registry.npm.taobao.org 

3、使用cnpm 下载vue-cli

cnmp install -g cue-cli

如果之前安装的有node,nmp和cnpm就可以不用安装,

三:设置vue项目

1.将vue项目,放在django文件夹下,跟app01文件夹同级

2.运行vue项目

cd firstvue         ## 进入到上一部创建的firstvue项目中  
cnpm install        ## 安装需要的依赖模块  
cnpm run dev        ## 运行调式的服务,会启动一个web服务,访问localhost:8080 即可调式  

如果可以运行成功,证明当前vue项目是没有问题

四:vue项目写完后,打包vue项目,然后修改django配置,将vue集成到django中

cnpmrunbuild##打包vue项目,会将所有东西打包成一个dist文件夹

在python下的项目文件夹下的-settings.py中配置

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': ['vue-admin-master/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',
            ],
        },
    },
]

把vue的静态文件夹的目录配置到项目中【添加静态文件夹路径】

STATIC_URL = '/static/'

STATICFILES_DIRS=[
    os.path.join(BASE_DIR,'vue-admin-master/dist/static/'), # 添加内容
]

五:修改django的主目录的urls文件

from django.contrib import admin
from django.urls import path
from blog import views
from django.views.generic.base import TemplateView

urlpatterns = [
    path('admin/', admin.site.urls),
    path(r'', TemplateView.as_view(template_name='index.html')),
]

添加对应的路由

六:启动django服务,访问localhost:8000 则可以出现vue的首页

启动django

python manage.py runserver
http://127.0.0.1:8000/#/login

访问出现vue项目的界面,就已经成功了!

七:有时候并不能直接访问出首页,原因是路径不对

有的会设置的有前缀,需要把前缀去掉,重新打包才能使用

打包的时候不需要把之前的打包内容删除,直接重新打包,会有对应的打包记录

八:vue打包之后经常会出现fontawesome图标库不能使用的情况

打包之后,需要手动吧fontawesome引入的css文件路径更改

把原来的

url(/static/fonts/fontawesome-webfont.b06871f.ttf),
换成
url(../fonts/fontawesome-webfont.b06871f.ttf),

fontawesome小图标就可以显示出来了

到此这篇关于python框架django中结合vue进行前后端分离的文章就介绍到这了,更多相关django vue前后端分离内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python Flask基础到登录功能的实现代码

    Python Flask基础到登录功能的实现代码

    这篇文章主要介绍了Python Flask基础到登录功能的实现代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-05-05
  • python制作简单五子棋游戏

    python制作简单五子棋游戏

    这篇文章主要为大家详细介绍了python制作简单五子棋游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • 深入浅出学习python装饰器

    深入浅出学习python装饰器

    这篇文章主要和大家一起深入浅出的学习python装饰器的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • django 自定义用户user模型的三种方法

    django 自定义用户user模型的三种方法

    这篇文章主要介绍了django 自定义用户user模型的三种方法,需要的朋友可以参考下
    2014-11-11
  • 使用scrapy实现增量式爬取方式

    使用scrapy实现增量式爬取方式

    这篇文章主要介绍了使用scrapy实现增量式爬取方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • Python 代替 xftp 从 Linux 服务器下载文件的操作方法

    Python 代替 xftp 从 Linux 服务器下载文件的操作方法

    我们经常需要从Linux服务器上同步文件,但是xftp等工具都需要注册了,这里用免费的Python代码来下载文件,还可以扩展更多的自定义用法,这篇文章主要介绍了Python 代替 xftp 从 Linux 服务器下载文件,需要的朋友可以参考下
    2024-06-06
  • Python selenium键盘鼠标事件实现过程详解

    Python selenium键盘鼠标事件实现过程详解

    这篇文章主要介绍了Python selenium键盘鼠标事件实现过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • PyQt5中QAbstractScrollArea的详细用法教程

    PyQt5中QAbstractScrollArea的详细用法教程

    在PyQt5中,QAbstractScrollArea是一个非常重要的类,它提供了滚动区域的基本框架,允许用户通过滚动条来查看超出可视区域的内容,本文将结合具体案例,详细讲解QAbstractScrollArea的用法,需要的朋友可以参考下
    2024-08-08
  • Python 自动化常用操作及glob使用大全

    Python 自动化常用操作及glob使用大全

    这篇文章主要介绍了Python 自动化常用操作,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • Python实用小知识之对象间的比较

    Python实用小知识之对象间的比较

    == 和 is 是 Python 中对象比较常用的两种方式,简单来说,'==' 操作符比较对象之间的值是否相等,下面这篇文章主要给大家介绍了关于Python实用小知识之对象间比较的相关资料,需要的朋友可以参考下
    2021-10-10

最新评论