luffy项目 - 后台搭建

一:环境准备

  1. pip换源
    点这里换源详细介绍

    pip3 下载在国外,比较慢,使用豆瓣源
    我们这里只需要:

    1. 来到C:\Users\oldboy\AppData\Roaming
    2. 新建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. linuxmac
      用户家路径新建pip.conf
    [global]
    index-url = http://pypi.douban.com/simple
    [install]
    use-mirrors =true
    mirrors =http://pypi.douban.com/simple/
    trusted-host =pypi.douban.com
    
    1. 以后再使用pip安装,走的是豆瓣源
  2. 创建虚拟环境
    点这里虚拟环境详细介绍

    1. 路飞项目用django2.0.7, 公司老项目用的1.11.9,如果都再系统解释器装,django版本需要不停安装卸载

    2. windows

      pip3 install virtualenv
      pip3 install virtualenvwrapper-win
      
    3. 配置环境变量(原来用pycharm创建的虚拟环境都放在了项目根路径下)
      配一个环境变量:变量名:WORKON_HOME 变量值D:\Virtualenvs
      现在放在了D:\Virtualenvs

      同步配置信息:
      去向Python3的安装目录 => Scripts文件夹 => virtualenvwrapper.bat => 双击

    4. 使用如下命令
      mkvirtualenv -p python3 luffyapi # 基于python3创建出一个虚拟环境luffyapi,放在d:\Virtualenvs

    5. 使用命令
      workon # 查看目前有哪几个虚拟环境
      workon luffyapi # 使用luffyapi
      deactivate # 退出当前虚拟环境

    6. 导出项目依赖模块(第三方模块导出)
      pip freeze >req.txt

  • 以后上线,项目大概率跑在虚拟环境中
  1. pip导入、导出第三方依赖包
    点这里详细介绍

二:项目构建

1. 虚拟环境 和 依赖准备

① 创建虚拟环境LuffyAPI

mkvirtualenv LuffyAPI

② 切换到虚拟环境LuffyAPI

workon LuffyAPI

③ 安装基础依赖

pip install djangorestframework==3.10.0
pip install django==2.0.7
pip install pymysql

2. 项目创建

① 切换到需要创建项目的路径

cd [目标路径]

② 创建Django项目

django-admin startproject LuffyAPI

3. 目录结构更改

① 目录结构
在这里插入图片描述
② 更改过程

  • 在根目录LuffyAPI下创建logs文件夹、scripts文件夹
  • 在子目录LuffyAPI下创建apps文件夹、libs文件夹、settings文件夹
  • 将子目录LuffyAPI下的settings.py移动到settings文件夹中,并重命名为dev.py
  • dev.py复制一份,重命名为pro.py

4. 修改manage.pywsgi.py

manage.py

# 修改第8行
def main():
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'LuffyAPI.settings.dev')
    ...

wsgi.py

# 修改第14行
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'LuffyAPI.settings.dev')

5. 创建APP

因为已经更改过了目录结构,创建APP已经不能在原路径下创建了,需要到子目录LuffyAPI下的apps中创建

# 切换到 子目录LuffyAPI 下的 apps (Windows系统是\,Linux和Mac是/)
cd LuffyAPI\apps\

# 创建4个APP
python ../../manage.py startapp course
python ../../manage.py startapp home
python ../../manage.py startapp order
python ../../manage.py startapp user

6. 设置路径

① 修改dev.py

import sys

# 让项目下的子LuffyAPI作为根路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

sys.path.append(BASE_DIR)   # 把该路径添加到环境变量,可以直接导入子LuffyAPI的文件了

sys.path.append(os.path.join(BASE_DIR, 'apps'))  # 把apps加入到环境变量

② 将子LuffyAPI文件夹作为Source Root(便于PyCharm提示)

在这里插入图片描述

③ 将apps文件夹作为Source Root(便于PyCharm提示)

在这里插入图片描述

  • 成功之后,文件夹都会变成蓝色
    在这里插入图片描述

7. 注册APP

INSTALLED_APPS = [
    ...
    'course',
    'home',
    'order',
    'user'
]

8. 数据库配置

一:创建数据库

  1. 登录
mysql -u root -p [密码]
  1. 创建数据库
create database luffy default charset=utf8;
  1. 查看用户
select user,host,password from mysql.user;

5.7之后的版本

select user,host,authentication_string from mysql.user;

二:为指定数据库配置指定账户

为了增加数据库的安全性,单独创建1个用户(任何人都可以远程连接),该用户只对这个库有权限,没有其他权限

1. 配置任意IP都可以连入数据库的账户(配置1个账户:luffy,只对luffy数据库有权限)
grant all privileges on luffy.* to 'luffy'@'%' identified by 'Luffy123?';
2. 由于数据库版本的问题,可能本地还连接不上,就给本地用户单独配置
grant all privileges on luffy.* to 'luffy'@'localhost' identified by 'Luffy123?';
3. 刷新权限
flush privileges;
4. 账号密码(只能操作luffy数据库的账户)
数据库luffy
账号luffy
密码Luffy123?
5. 测试连接

格式:mysql -h [IP地址] -u [用户名] -p[密码]

mysql -h 127.0.0.1 -u luffy -pLuffy123?
三:Django中的数据库配置
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'luffy',
        'USER': 'luffy',
        'PASSWORD': 'Luffy123?',
        'HOST': '[本机IP]',
        'PORT': 3306
    }
}

import pymysql

pymysql.install_as_MySQLdb()

9. 国际化配置

LANGUAGE_CODE = 'zh-hans'

TIME_ZONE = 'Asia/Shanghai'

USE_I18N = True

USE_L10N = True

USE_TZ = False

10. 修改PyCharm配置

① 点击左上角下拉 - Edit Configurations...
在这里插入图片描述
② 将Environment variables中的内容替换成如下内容

PYTHONUNBUFFERED=1;DJANGO_SETTINGS_MODULE=LuffyAPI.settings.dev

在这里插入图片描述

11. 删除dev.py中的TEMPLATE配置

  • 可删可不删
  • Django2.2之前可以删除,Django2.2之后删除会报错,需要一同删除其他关联文件

12. 运行测试

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值