其他分享
首页 > 其他分享> > 路飞项目前后台配置相关

路飞项目前后台配置相关

作者:互联网

内容回顾

# 企业软件类型-->内部系统,给客户定制的系统
# 企业软件开发流程--》你平时工作开发流程是什么
# 软件开发模式
	-瀑布
  -敏捷开发
  
# pip换源
	-pip install -i 源的地址 包名
  -pip install -r requirements.txt  一会讲
  
	npm install  类似于 pip install -r requirements.txt
  -拿到一个新项目--》本地跑起来
  	-python解释器版本---》统一起来
    -装第三方模块:在他机器上装不上(win:好多模块装不了)---》单独找出装不上的模块,单独解决
    -配置数据库
    -本地运行
 	-用户家路径 新建 pip 文件--->pip.ini --->配置源地址
  -有时候,装不上模块---》豆瓣源可能有的模块不是最新--->换个源再装 -i
  
# 虚拟环境
	-解决同一个机器上有多个项目,多个项目使用的模块版本不一致的问题
  -虚拟环境来解决这个问题
  	-每一个项目有一个虚拟环境,自己的虚拟环境装自己的模块,系统的解释器(不装模块)
  -pycharm中如何创建---》注意再装模块,确认好装在哪里了  pip
  -以后要清楚 python命令和pip命令指的是谁---》重命名
  -环境变量
  	-用户环境变量:登陆用户
    -系统环境变量:所有使用
    -在任意路径执行命令能够找到---》win下xx.exe或者xx.bat   mac和linux下 xx或者xx.sh
    -敲命令,查找路径,先在自己路径下找,用户环境变量的path中找,系统环境变量的path中
    -装python解释器,任意路径下执行python,pip 能执行---》自动把python解释器路径和解释器路径下的scripts文件夹加入到了环境变量
    -mac,linux:用户环境变量(用户家路径下)和系统环境变量
    
  	-win下
    	-安装两个模块
      -配置虚拟环境创建路径:workonhome=D:\vir
      -创建虚拟环境,建在这个目录下了
    -mac,linux下
    	-安装两个模块
    	-virtualenvwrapper.sh  放到环境变量
      -配置环境变量:用户环境变量  ~/.bash_profile
      VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3
			source /usr/local/bin/virtualenvwrapper.sh
    -虚拟环境的创建,查看,删除,进入,退出命令
  -用户和权限
  	-linux :root,普通用户
    -mac:    root,你的名字用户,有些文件它操作不了--->sudo
    -win: 通常情况,默认登陆用户admin,你的名字的用户权限低
      
      
# 后端项目创建---》目录调整
	-多套配置文件:开发,上线环境不一样--》manage.py,wsgi.py
  -app都放在apps路径下下,但是注册app还是以app名字注册--》把apps路径加入到环境变量
  -把BASE_DIR加入到环境变量
  -创建了几个包(文件夹),分别存放不通的代码
  -python ../../manage.py startapp app名字
  
  
# 后端记录日志
	-把Log大字典复制到配置文件中
  -logging.py --->生成一个logger对象
  -以后写日志的时候,把logger对象导入直接用即可---》日志写到控制台,写到文件中
  
# 处理全局异常
	-加入日志记录
# 导出项目依赖模块和安装项目依赖模块
	-第三方模块---》导出来---》项目路径下--》requirements.txt
  	-第三方模块名字和版本
    pip freeze >requirements.txt
    
  -pip3 install -r requirements.txt  # 文件中所有模块装上

内容详情

1 二次封装Response

# drf有个Response类
	-data=None,   {'status':100,'msg':'成功','token':asedfasfd3a21}
  -status=None,
  -template_name=None, 
  -headers=None,
  -exception=False, 
  -content_type=None

2 后台数据库配置

# 使用mysql---》创建一个库(手动)--》库名:luffy
# 项目配置文件中,连接这个数据库


### 创建数据库,并配置
-create database luffy default charset=utf8;
### 给数据库创建一个lqz用户,它只能操作luffy库---》万一你的lqz用户密码泄露了--》
# 查看用户
# 5.7之前版本
select user,host,password from mysql.user;
# 5.7往后的版本
select user,host,authentication_string from mysql.user;

## 创建用户
# 授权账号命令:grant 权限(create, update) on 库.表 to '账号'@'host' identified by '密码'
grant all privileges on luffy.* to 'lqz'@'%' identified by 'Luffy123?';
grant all privileges on luffy.* to 'lqz'@'localhost' identified by 'Luffy123?';

# mysql -h 127.0.0.1 -P 3306 -uroot -p
# mysql -uroot -p     有区别,如果在本地连接,使用这个,速度会快

# 刷新权限
flush privileges;


## 项目配置文件加入
   'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'luffy', # 数据库名字
        'USER': 'lqz', # 用户名
        'PASSWORD': 'Luffy123?',
        'HOST': 'localhost',
        'PORT': 3306
    }
    
    
### django操作mysql
	-模式使用MysqlDB来操作---》MysqlDB在python3.x以后不存在了
  -使用pymysql替换---》django2.0.7版本及以上,如果使用pymysql替换,需要改django源码
  
### 关于pymysql和mysqlclient的选择
  # 这两句话,只要执行即可,放在那里都行---》只要django执行,所有py文件中顶格写的代码都会执行
  # 作用是?猴子补丁,动态替换  --->python一切皆对象,可以动态替换对象
  # 如果该源码,后期只要使用django,都要改它的源码
  # 所以咱们换另一个操作mysql的模块,mysqlclient---》MysqlDB的3版本--》有可能装不上--》win上看人品,实在装不上用whl文件装 linux上有不同解决方案
  # http://www.liuqingzheng.top/python/%E5%85%B6%E4%BB%96/01-%E5%90%84%E4%B8%BB%E6%B5%81Linux%E7%B3%BB%E7%BB%9F%E8%A7%A3%E5%86%B3pip%E5%AE%89%E8%A3%85mysqlclient%E6%8A%A5%E9%94%99/
  # import pymysql
  # pymysql.install_as_MySQLdb()
  
#### 使用mysqlclient不需要写两句话,不用改源码

3 user模块user表设计

# 用户板块---》做成app
python ../../manage.py startapp user

# 创建用户表,基于auth的user表扩写
### 注意:在写好这个之前,不要先迁移数据,如果迁移了数据库,这个就不行了
### 如果你已经迁移了,删除数据库,删除所有的migrations文件,包含你自己的app,和auth和admin这两个app

## models.py
from django.db import models
from django.contrib.auth.models import AbstractUser


class User(AbstractUser):
    mobile = models.CharField(max_length=11, unique=True)  # 唯一,长度11
    # 需要pillow包的支持 ImageField继承自FileField
    icon = models.ImageField(upload_to='icon', default='icon/default.png')

    class Meta:
        db_table = 'luffy_user'
        verbose_name = '用户表'
        verbose_name_plural = verbose_name

    def __str__(self):
        return self.username
      
      
 # 配置文件---》注册表
  INSTALLED_APPS = [
      # ...
      'user',
  ]

  # 自定义User表
  AUTH_USER_MODEL = 'user.User'
  
  
  ## 配置media
  MEDIA_URL = '/media/'
	MEDIA_ROOT = os.path.join(BASE_DIR, 'media')


  # 安装pillow ,迁移
  pip install pillow
  python manage.py makemigrations
  python manage.py migrate
  

4 前台创建及配置

# 创建项目
vue create luffycity
# 使用pycharm打开

# 删除一些东西
### APP.vue
<template>
  <div id="app">
    <router-view/>
  </div>
</template>

## HomeView.vue
<template>
  <div class="home">
    <h1>首页</h1>
  </div>
</template>

<script>

export default {
  name: 'HomeView',
  components: {
  }
}
</script>

## router下的index.js 
const routes = [
  {
    path: '/',
    name: 'home',
    component: HomeView
  },
]

### elementui ,bootstrap,jquery,axios配置
# axios
cnpm install axios  -S
## main.js
import axios from 'axios'
Vue.prototype.$axios = axios;

#elementui
cnpm install element-ui -S
## main.js
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);

# bootstrap和jq
cnpm install jquery -S
cnpm install bootstrap@3 -S
## vue.config.js
module.exports = {
    configureWebpack: {
        plugins: [
            new webpack.ProvidePlugin({
                $: "jquery",
                jQuery: "jquery",
                "window.jQuery": "jquery",
                "window.$": "jquery",
                Popper: ["popper.js", "default"]
            })
        ]
    }
};
## main.js
import 'bootstrap'
import 'bootstrap/dist/css/bootstrap.min.css'




### 全局css样式配置
##assets/css/global.css
/* 声明全局样式和项目的初始化样式 */
body, h1, h2, h3, h4, h5, h6, p, table, tr, td, ul, li, a, form, input, select, option, textarea {
    margin: 0;
    padding: 0;
    font-size: 15px;
}

a {
    text-decoration: none;
    color: #333;
}

ul {
    list-style: none;
}

table {
    border-collapse: collapse; /* 合并边框 */
}

## main.js
// 把自己定义的global.css 引入
import './assets/css/global.css'


## 配置文件配置
# assets/js/settings.js
export default {
    base_url: "http://127.0.0.1:8000"
}
# main.js 
// 把自己定义的global.css 引入
import './assets/css/global.css'
// 导入自定义配置
import settings from './assets/js/settings'
Vue.prototype.$settings = settings;


标签:配置,install,##,前后,---,路飞,模块,环境变量,css
来源: https://www.cnblogs.com/henry1998/p/16168103.html