Python Django Vue 项目创建过程详解


Posted in Python onJuly 29, 2019

1、创建项目

打开pycharm 终端,输入如下,创建项目

# 进入pycharm 项目目录下
cd pyWeb

django-admin startproject pyweb_dome

# pyweb_dome 是django项目名称

2、创建应用

# 进入项目根目录 pyweb_dome 下

 cd pyweb_dome 
python manage.py startapp webserver # webserver 为应用名

3、创建前端项目

使用vue-cli在根目录创建一个名称叫【frontend】的Vue.js项目作为项目前端

# 使用vue-cli在根目录创建一个名称叫【webfront】的Vue.js项目作为项目前端

vue-init webpack webfront

4、打包vue项目

# 使用 webpack 打包vue项目
cd webfront

npm install 
npm run build

此时直接运行npm run dev也可以直接查看前端 vue界面

npm run build

构建完成会生成一个文件夹,名字叫dist,里面有一个 index.html 和一个 文件夹static。

5、使用Django的通用视图 TemplateView修改静态指向路径(就是让Django访问目录指向我们刚才打包的dist/index.html)

找到项目根 pyweb_demo/urls.py文件作出如下修改,注意1、2两处修改。

"""pyweb_dome URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
  https://docs.djangoproject.com/en/2.1/topics/http/urls/
Examples:
Function views
  1. Add an import: from my_app import views
  2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
  1. Add an import: from other_app.views import Home
  2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
  1. Import the include() function: from django.urls import include, path
  2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path

from django.views.generic.base import TemplateView # 1、增加该行

urlpatterns = [
  path('admin/', admin.site.urls),
  path(r'',TemplateView.as_view(template_name='index.html')), #2、 增加该行
]

6. 配置Django项目的模板搜索路径和静态文件搜索路径 找到根目录下 pyweb_demo/settings.py文件并打开,找到TEMPLATES配置项,修改如下:

TEMPLATES = [
  {
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    #'DIRS': [],
    'DIRS': ['webfront/dist'], # 修改1 
    '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',
      ],
    },
  },
]


# 新增2
# Add for vue.js
STATICFILES_DIRS = [
  os.path.join(BASE_DIR, "webfront/dist/static"),
]

7,到此基本就配置完成了,回退到根目录 运行命令就可以直接查看效果

python manage.py runserver

Python Django Vue 项目创建过程详解

Python Django Vue 项目创建过程详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python制作Windows系统服务
Mar 25 Python
Python操作Oracle数据库的简单方法和封装类实例
May 07 Python
基于DATAFRAME中元素的读取与修改方法
Jun 08 Python
Python控制键盘鼠标pynput的详细用法
Jan 28 Python
python下载库的步骤方法
Oct 12 Python
基于Python实现签到脚本过程解析
Oct 25 Python
如何基于python测量代码运行时间
Dec 25 Python
pandas中的数据去重处理的实现方法
Feb 10 Python
Python垃圾回收机制三种实现方法
Apr 27 Python
python如何求圆的面积
Jul 01 Python
Python之字典添加元素的几种方法
Sep 30 Python
Python源码解析之List
May 21 Python
python cumsum函数的具体使用
Jul 29 #Python
python利用re,bs4,requests模块获取股票数据
Jul 29 #Python
实例详解Python装饰器与闭包
Jul 29 #Python
对于Python深浅拷贝的理解
Jul 29 #Python
PyCharm中代码字体大小调整方法
Jul 29 #Python
python pandas cumsum求累计次数的用法
Jul 29 #Python
详解Python用三种方式统计词频的方法
Jul 29 #Python
You might like
firefox中JS读取XML文件
2006/12/21 Javascript
javascript 放大镜 v1.0 基于Yui2 实现的放大镜效果
2010/03/08 Javascript
javascript模拟post提交隐藏地址栏的参数
2014/09/03 Javascript
防止Node.js中错误导致进程阻塞的办法
2016/08/11 Javascript
深入理解jQuery layui分页控件的使用
2016/08/17 Javascript
jquery 删除节点 添加节点 找兄弟节点的简单实现
2016/12/07 Javascript
Html5+jQuery+CSS制作相册小记录
2016/12/30 Javascript
vue axios用法教程详解
2017/07/23 Javascript
详解angularjs获取元素以及angular.element()用法
2017/07/25 Javascript
利用JavaScript实现栈的数据结构示例代码
2017/08/02 Javascript
Vue.js 踩坑记之双向绑定
2018/05/03 Javascript
详解如何更好的使用module vuex
2019/03/27 Javascript
深入学习JavaScript中的bom
2019/05/27 Javascript
vue实现记事本功能
2019/06/26 Javascript
Vue前端项目部署IIS的实现
2020/01/06 Javascript
Vue双向绑定实现原理与方法详解
2020/05/07 Javascript
JavaScript中的全局属性与方法深入解析
2020/06/14 Javascript
js+css3实现炫酷时钟
2020/08/18 Javascript
[07:12]2014DOTA2西雅图国际邀请赛 黑马Liquid专题采访
2014/07/12 DOTA
[03:45]Newbee战队出征西雅图 决战2016国际邀请赛
2016/08/02 DOTA
python 实现红包随机生成算法的简单实例
2017/01/04 Python
Python中Django 后台自定义表单控件
2017/03/28 Python
python并发2之使用asyncio处理并发
2017/12/21 Python
Python实现二叉搜索树BST的方法示例
2019/07/30 Python
python实现证件照换底功能
2019/08/20 Python
python自动化UI工具发送QQ消息的实例
2019/08/27 Python
python3多线程知识点总结
2019/09/26 Python
python全局变量引用与修改过程解析
2020/01/07 Python
pyftplib中文乱码问题解决方案
2020/01/11 Python
介绍一下如何优化MySql
2016/12/20 面试题
绿化先进工作者事迹材料
2014/01/30 职场文书
逃课打麻将检讨书
2014/10/05 职场文书
2014年妇委会工作总结
2014/12/10 职场文书
工作态度怎么写
2015/06/25 职场文书
Python中zipfile压缩包模块的使用
2021/05/14 Python
浅谈mysql返回Boolean类型的几种情况
2021/06/04 MySQL