• Django---子框架drf项目---路飞学城---前后端搭建



    刘老师博客

    pip换源

    永久配置安装源

    windows:

    文件管理器敲%APPDATA%,进去之后新建pip文件夹,创建pip.ini配置文件,文件内容:

    [global]
    index-url = http://pypi.douban.com/simple
    [install]
    use-mirrors =true
    mirrors =http://pypi.douban.com/simple/
    trusted-host =pypi.douban.com
    

    虚拟环境搭建

    #优点
    1 使用不同应用开发环境相互独立
    2 环境升级不影响其他应用、不会冲突全局的python环境
    3 防止出现包管理混乱及版本冲突
    
    windown:
    #建议使用pip3安装到python环境下
    pip3 install virtualenv
    pip3 install virtualenvwrapper-win
    #创建文件夹D:Virtualenvs
    
    配置虚拟环境管理器工作目录
    #配置环境变量
    # 控制面板 => 系统和安全 => 系统 => 高级系统设置 => 环境变量 => 系统变量 => 点击新建 => 填入变量名与值
    变量名:WORKON_HOME  变量值:自定义存放虚拟环境的绝对路径
    eg: WORKON_HOME: D:Virtualenvs
    #同步配置信息
    # 去向Python3的安装目录 => Scripts文件夹 => virtualenvwrapper.bat => 双击
    
    使用
    #终端命令
    1 创建虚拟环境到配置的WORKON_HOME路径下
    	mkvirtualenv -p python3 自定义的虚拟环境名称(比如:luffy)	使用的是python3
    	mkvirtualenv -p python2 自定义的虚拟环境名称(比如:luffy)	使用的是python2
    2 查看已有的虚拟环境
    	workon
    3 使用虚拟环境
    	workon 已有的虚拟环境名称(比如:luffy)
    4 进入、退出该虚拟环境的Python环境
    	python、exit()
    5 为虚拟环境安装模块
    	pip install 模块名称(比如:django==2.2)
    6 退出当前虚拟环境
    	deactivate
    7 删除虚拟环境(删除当前虚拟环境要先退出)
    	rmvirtualenv
    
    PyCharm的使用(使用虚拟环境)(我们使用这种方式,不建app)

    新建项目

    使用虚拟环境

    环境使用

    luffy后台搭建

    环境
    #给虚拟环境luffy安装依赖环境
        pip install django==2.2
    	pip install djangorestframework
    	pip install pymysql
    
    创建项目(我们前面已经用PyCharm创建好了)
    在目标目录下创建luffy文件夹
    cd 进入luffy项目
    django-admin startproject luffyapi
    用PyCharm打开项目,使用已经建好的虚拟环境
    
    重构项目目录
    luffyapi
    	-logs	#项目运行时/开发时的日志目录
    	-manage.py	#脚本文件
    	-scripts	#保存项目运营时的脚本文件
    	-luffyapi	#项目的主应用,开发时的代码保存
    		-utils(包带__init__.py)公共函数库
    		-urls.py	#总路由
    		-apps(包带__init__.py)	#子应用保存目录
    		-libs	#第三方类库的保存目录
    		-settings(包带__init__.py)	#配置目录
    			-dev.py	#项目开发时的本地配置
    			-prod.py	#项目上线时的运行配置
    创建doc文件夹、创建readme.md文件
    终端下创建两个应用到apps
    cd 到apps目录下
    python ../../manage.py startapp home
    python ../../manage.py startapp user
    因为manage.py在根目录,所以需要../../到根目录去用该文件
    
    配置开发环境
    1 把settings.py内容复制到dev.py,原来的settings.py删除
    2 #修改下面两文件
    # manage.py
    os.environ.setdefault('DJANGO_SETTINGS_MODULE','luffyapi.settings.dev')
    # wsgi.py
    os.environ.setdefault('DJANGO_SETTINGS_MODULE','luffyapi.settings.dev')#本地使用.dev,后面修改为.prod即可
    3 修改dev.py文件内容(错误信息改成中文)
    	LANGUAGE_CODE = 'zh-hans'
        TIME_ZONE = 'Asia/Shanghai'
        USE_TZ = False
    4 修改启动配置
    	看下图
    5 把apps做成Sources Root看图2
    

    数据库配置

    创建项目依赖数据库,luffyapi
    	create database luffyapi;
    创建数据库用户,授予使用luffyapi数据库的权利	
    	grant all privileges on luffyapi.* to 		     			'luffyapi'@'localhost' identified by '123?';
    	---上面命令指:创建用户luffyapi授予使用luffyapi数据库使用权,用户密码是123
    刷新权限
        flush privileges;
    
    #配置文件配置
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'luffy',
            'USER': 'luffy',
            'PASSWORD': 'Luffy123?',
            'HOST': 'localhost',
            'PORT': 3306
        }
    }
    import pymysql
    pymysql.install_as_MySQLdb()
    

    django2.x版本可能会出现一些pymysql兼容问题,按报错注释、修改源码即可

    User表配置

    导入from django.contrib.auth.models import AbstractUser
    继承user之前不要数据迁移命令,会出错,需要:
    		-把所有app下的迁移文件,全删除
        	-admin,auth app下的迁移文件删除
       	    -删库(数据一定要导出来),重新迁移  (自己尝试一下)
    继承AbstractUser,增加两个字段,mobilephone、icon,
    	    mobilephone = models.CharField(max_length=11)
        	icon = models.ImageField(upload_to='icon',default='media/default.png')
    在settings.py中配置
    	MEDIA_URL='/media/'
    	MEDIA_ROOT=os.path.join(BASE_DIR,'media')
    	#此时的BASE_DIR是luffyapi下的luffyapi
    路由开放media文件夹,访问头像,需要导入
        from django.views.static import serve
        from django.conf import settings
        
    	re_path('media/(?P<path>.*)', serve{'document_root':settings.MEDIA_ROOT}),	
    

    路飞前台搭建

    1 安装node.js,官网下载,一路下一步
    	查看版本node -v
    2 安装模块,npm比较慢,用淘宝的cnpm来替换npm
    	npm install -g cnpm --registry=https://registry.npm.taobao.org   
    3 创建vue的工程,需要一个vue脚手架
    	cnpm install -g @vue/cli
    4 如果有问题执行如下,重走2、3步
    	npm cache clean --force
    5 创建vue项目
    	vue create 自定义项目名(我们用luffycity)
    	选Manually
    6 用pycharm打开,配置快键启动
    	看下图
    

    目录介绍

    public
        -favicon.ico   # 
        -index.html    #整个项目的单页面
    src
        -assets  #静态文件,js,css,img
        -components # 小组件,头部组件,尾部组件
        -router     # 路由相关
        -store      # vuex相关,状态管理器,临时存储数据的地方
        -views      # 页面组件
        -App.vue    # 根组件
        -main.js    # 配置文件(跟django的setting一样
    
    #任何一个组件都有三部分,里面书写相关代码
    	<template>
        	#html相关
    	</template>
        <style>
    		# css相关
    	</style>
    
        <script>
    		# js相关
        </script>
    
  • 相关阅读:
    C. Karen and Game
    BZOJ2134: 单选错位
    BZOJ3562: [SHOI2014]神奇化合物
    BZOJ1084: [SCOI2005]最大子矩阵
    BZOJ5039: [Jsoi2014]序列维护
    BZOJ1798: [Ahoi2009]Seq 维护序列seq
    BZOJ3932: [CQOI2015]任务查询系统
    BZOJ3339: Rmq Problem
    BZOJ3585: mex
    BZOJ4196: [Noi2015]软件包管理器
  • 原文地址:https://www.cnblogs.com/linqiaobao/p/13325151.html
Copyright © 2020-2023  润新知