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的gevent框架的入门教程
Apr 29 Python
Python中List.count()方法的使用教程
May 20 Python
Python基于tkinter模块实现的改名小工具示例
Jul 27 Python
Python探索之pLSA实现代码
Oct 25 Python
基于Pandas读取csv文件Error的总结
Jun 15 Python
使用k8s部署Django项目的方法步骤
Jan 14 Python
Pandas之ReIndex重新索引的实现
Jun 25 Python
pycharm 批量修改变量名称的方法
Aug 01 Python
PYTHON如何读取和写入EXCEL里面的数据
Oct 28 Python
python中数据库like模糊查询方式
Mar 02 Python
详解Python中namedtuple的使用
Apr 27 Python
微信小程序调用python模型
Apr 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
phpMyAdmin2.11.6安装配置方法
2008/08/24 PHP
web目录下不应该存在多余的程序(安全考虑)
2012/05/09 PHP
2014年最新推荐的10款 PHP 开发框架
2014/08/01 PHP
php校验表单检测字段是否为空的方法
2015/03/20 PHP
php强制用户转向www域名的方法
2015/06/19 PHP
php获取文件类型和文件信息的方法
2015/07/10 PHP
jquery实现ajax提交form表单的方法总结
2014/03/03 Javascript
Bootstrap每天必学之导航
2015/11/26 Javascript
jQuery 1.9.1源码分析系列(十三)之位置大小操作
2015/12/02 Javascript
JS组件Bootstrap Select2使用方法详解
2020/04/17 Javascript
Javascript字符串拼接小技巧(推荐)
2016/06/02 Javascript
微信小程序 教程之注册程序
2016/10/17 Javascript
JS无缝滚动效果实现方法分析
2016/12/21 Javascript
Angularjs分页查询的实现
2017/02/24 Javascript
JavaScript实现修改伪类样式
2017/11/27 Javascript
微信小程序数据存储与取值详解
2018/01/30 Javascript
详解Angular-ui-BootStrap组件的解释以及使用
2018/07/13 Javascript
selenium+java中用js来完成日期的修改
2019/10/31 Javascript
[52:15]2014 DOTA2国际邀请赛中国区预选赛5.21 HGT VS LGD-GAMING
2014/05/23 DOTA
[03:55]显微镜下的DOTA2特别篇——430灰烬之灵神级操作
2014/06/24 DOTA
[01:36:19]Secret vs NB 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python序列之list和tuple常用方法以及注意事项
2015/01/09 Python
python去除空格和换行符的实现方法(推荐)
2017/01/04 Python
python日期时间转为字符串或者格式化输出的实例
2018/05/29 Python
Python面向对象之反射/自省机制实例分析
2018/08/24 Python
pandas把所有大于0的数设置为1的方法
2019/01/26 Python
使用Python paramiko模块利用多线程实现ssh并发执行操作
2019/12/05 Python
Django项目uwsgi+Nginx保姆级部署教程实现
2020/04/19 Python
Python实现http接口自动化测试的示例代码
2020/10/09 Python
简单掌握CSS3将文字描边及填充文字颜色的方法
2016/03/07 HTML / CSS
潘多拉意大利官方网上商城:网上选购PANDORA珠宝
2018/10/07 全球购物
英国领先的餐饮折扣俱乐部:Gourmet Society
2020/07/26 全球购物
Ajxa常见问题都有哪些
2014/03/26 面试题
员工自我鉴定范文
2013/10/06 职场文书
海飞丝广告词
2014/03/20 职场文书
校车安全责任书
2014/08/25 职场文书