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实现挑选出来100以内的质数
Mar 24 Python
浅析Python的Django框架中的Memcached
Jul 23 Python
使用PyCharm配合部署Python的Django框架的配置纪实
Nov 19 Python
python中(str,list,tuple)基础知识汇总
Feb 20 Python
python实现视频分帧效果
May 31 Python
Python Numpy 实现交换两行和两列的方法
Jun 26 Python
Python 使用指定的网卡发送HTTP请求的实例
Aug 21 Python
Windows10下Tensorflow2.0 安装及环境配置教程(图文)
Nov 21 Python
python构造IP报文实例
May 05 Python
python 操作mysql数据中fetchone()和fetchall()方式
May 15 Python
详解python tcp编程
Aug 24 Python
python 用opencv实现霍夫线变换
Nov 27 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
PHP中动态HTML的输出技术
2006/10/09 PHP
php插入中文到sqlserver 2008里出现乱码的解决办法分享
2012/07/19 PHP
美图秀秀web开放平台--PHP流式上传和表单上传示例分享
2014/06/22 PHP
YII实现分页的方法
2014/07/09 PHP
浅谈使用PHP开发微信支付的流程
2015/10/04 PHP
改进:论坛UBB代码自动插入方式
2006/12/22 Javascript
chrome下img加载对height()的影响示例探讨
2014/05/26 Javascript
jQuery+Ajax实现无刷新分页
2015/10/30 Javascript
JS修改地址栏参数实例代码
2016/06/14 Javascript
jQuery基于ID调用指定iframe页面内的方法
2016/07/06 Javascript
AngularJS之依赖注入模拟实现
2016/08/19 Javascript
JavaScript中省略元素对数组长度的影响
2016/10/26 Javascript
详解angular中如何监控dom渲染完毕
2017/01/03 Javascript
Bootstrap导航条学习使用(二)
2017/02/08 Javascript
jQuery插件zTree实现获取当前选中节点在同级节点中序号的方法
2017/03/08 Javascript
JavaScript生成指定范围的时间列表
2018/03/19 Javascript
解决vue项目使用font-awesome,build后路径的问题
2018/09/01 Javascript
JS简单数组排序操作示例【sort方法】
2019/05/17 Javascript
简单分析js中的this的原理
2019/08/31 Javascript
微信小程序利用for循环解决内容变更问题
2020/03/05 Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
2020/08/04 Javascript
vue组件实现移动端九宫格转盘抽奖
2020/10/16 Javascript
javascript实现随机抽奖功能
2020/12/30 Javascript
Python发起请求提示UnicodeEncodeError错误代码解决方法
2020/04/21 Python
python怎么对数字进行过滤
2020/07/05 Python
如何减少垃圾回收让内存更加有效使用
2013/10/18 面试题
策划助理岗位职责
2013/11/18 职场文书
销售心得体会
2014/01/02 职场文书
乡镇总工会学雷锋活动总结
2014/03/01 职场文书
2014年预备党员学习新党章思想汇报
2014/09/15 职场文书
小学运动会报道稿
2014/10/04 职场文书
教师学期个人总结
2015/02/11 职场文书
运动会开幕式通讯稿
2015/07/18 职场文书
《打电话》教学反思
2016/02/22 职场文书
资深HR教你写好简历中的自我评价
2019/05/07 职场文书
MySQL优化之如何写出高质量sql语句
2021/05/17 MySQL