• 测试项目配置


    一、pip安装源

    1、常见安装源

    """
    -- 豆瓣:https://pypi.douban.com/simple
    -- 阿里:https://mirrors.aliyun.com/pypi/simple
    安装的命令:
    -- >: pip install -i https://pypi.douban.com/simple 模块名
    """

    2、永久配置安装源

    """
    1、文件管理器文件路径地址栏敲:%APPDATA% 回车,快速进入 C:Users电脑用户AppDataRoaming 文件夹中
    2、新建 pip 文件夹并在文件夹中新建 pip.ini 配置文件
    3、新增 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
    """

    3、导出项目依赖库

    pip freeze >requirment.txt   #requirment.txt是自己定义的文件名

    4、根据文本导入依赖库

    pip install -r requirment.txt -i 豆瓣源

     

    二、虚拟环境

    1、虚拟环境安装

    pip3 install virtualenv
    pip3 install virtualenvwrapper-win

    2、配置虚拟环境工作目录

    # 配置环境变量:
    # 在系统变量中添加
    变量名:WORKON_HOME  变量值:自定义存放虚拟环境的绝对路径
    如: WORKON_HOME: D:Virtualenvs
    
    # 同步配置信息:
    # 去向Python3的安装目录 => Scripts文件夹 => virtualenvwrapper.bat => 双击

    3、常见终端使用命令

    # 选取默认Python环境创建虚拟环境:
       -- mkvirtualenv 虚拟环境名称
    # 基于某Python环境创建虚拟环境: -- mkvirtualenv -p python2.7 虚拟环境名称 -- mkvirtualenv -p python3.6 虚拟环境名称 # 2、查看已有的虚拟环境 -- workon # 3、使用某个虚拟环境 -- workon 虚拟环境名称 # 4、进入|退出 该虚拟环境的Python环境 -- python | exit() # 5、为虚拟环境安装模块 -- pip或pip3 install 模块名 # 6、退出当前虚拟环境 -- deactivate # 7、删除虚拟环境(删除当前虚拟环境要先退出) -- rmvirtualenv 虚拟环境名称

    三、后台配置 

    1、重构项目

    """
    ├── luffyapi
        ├── logs/                # 项目运行时/开发时日志目录 - 包
        ├── manage.py            # 脚本文件
        ├── luffyapi/              # 项目主应用,开发时的代码保存 - 包
            ├── apps/              # 开发者的代码保存目录,以模块[子应用]为目录保存 - 包
            ├── libs/              # 第三方类库的保存目录[第三方组件、模块] - 包
            ├── settings/          # 配置目录 - 包
                ├── dev.py       # 项目开发时的本地配置
                └── prod.py      # 项目上线时的运行配置
            ├── urls.py            # 总路由
            └── utils/             # 多个模块[子应用]的公共函数类库[自己开发的组件]
        └── scripts/               # 保存项目运营时的脚本文件 - 文件夹
    """

    2、重构后开发环境配置

    """
    1.修改 wsgi.py 与 manage.py 两个文件:
    # manage.py
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.dev')
    # wsgi.py
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.prod')
    # manage_prod.py
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.prod')
    
    2.将settings.py删除或改名,内容拷贝到settings/dev.py中
    
    3.修改dev.py文件内容
    LANGUAGE_CODE = 'zh-hans'
    TIME_ZONE = 'Asia/Shanghai'
    USE_TZ = False
    
    4.修改启动配置:见插图
    
    5.在任何一个__init__.py文件中测试默认配置文件是否是dev.py文件
    from django.conf import settings
    print(settings)
    """

     3、重构后添加app应用的配置

    #dev.py文件
    import
    sys sys.path.insert(0, BASE_DIR) APPS_DIR = os.path.join(BASE_DIR, 'apps') sys.path.insert(1, APPS_DIR)

    四、数据库配置

    1、配置权限

    '''
    创建用户::create user ‘用户名’@‘访问主机’ identified by ‘密码’;
    授予权限:grant 权限列表 on 数据库 to ‘用户名’@‘访问主机’ ;
    with grant option这个选项表示该用户可以将自己拥有的权限授权给别人
    '''
    #创建用户
    create user 'luffy'@'localhost' identified by  'luffy';
    #授予权限,任意ip可以连接数据库
    grant all privileges on luffy.* to 'luffy'@'%' with grant option;
    #本地连接
    grant all privileges on luffy.* to 'luffy'@'localhost' with grant option;
    #刷新
    flush privileges;

    2、配置文件配置:dev.py

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'luffy',
            'USER': 'luffy',
            'PASSWORD': 'luffy',
            'HOST': 'localhost',
            'PORT': 3306
        }
    }
    import pymysql
    pymysql.install_as_MySQLdb()

    五、Django 2.x 一些版本pymysql兼容问题

     

    六、日志配置 

    1、配置文件dev.py

    LOGGING = {
        'version': 1,
        'disable_existing_loggers': False,
        'formatters': {
            'verbose': {
                'format': '%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s'
            },
            'simple': {
                'format': '%(levelname)s %(module)s %(lineno)d %(message)s'
            },
        },
        'filters': {
            'require_debug_true': {
                '()': 'django.utils.log.RequireDebugTrue',
            },
        },
        'handlers': {
            'console': {
                # 实际开发建议使用WARNING
                'level': 'DEBUG',
                'filters': ['require_debug_true'],
                'class': 'logging.StreamHandler',
                'formatter': 'simple'
            },
            'file': {
                # 实际开发建议使用ERROR
                'level': 'INFO',
                'class': 'logging.handlers.RotatingFileHandler',
                # 日志位置,日志文件名,日志保存目录必须手动创建,注:这里的文件路径要注意BASE_DIR代表的是小luffyapi
                'filename': os.path.join(os.path.dirname(BASE_DIR), "logs", "luffy.log"),
                # 日志文件的最大值,这里我们设置300M
                'maxBytes': 300 * 1024 * 1024,
                # 日志文件的数量,设置最大日志数量为10
                'backupCount': 10,
                # 日志格式:详细格式
                'formatter': 'verbose',
                # 文件内容编码
                'encoding': 'utf-8'
            },
        },
        # 日志对象
        'loggers': {
            'django': {
                'handlers': ['console', 'file'],
                'propagate': True, # 是否让日志信息继续冒泡给其他的日志处理系统
            },
        }
    }

    2、重写logging.py文件

    import logging
    logger = logging.getLogger('django') #django是日志对象中的名字
  • 相关阅读:
    重写GridView(转载)
    《Windows Communication Foundation之旅》系列之二(转载)
    C++类的继承与多重继承的访问控制(转载)
    准备出发
    10月8日 多云
    081014 曇後雨
    关于SQL Server 2005 Reporting Services的几点设置
    081007 浓雾
    081003 晴
    10月6日 上班
  • 原文地址:https://www.cnblogs.com/nq31/p/13994276.html
Copyright © 2020-2023  润新知