zoukankan      html  css  js  c++  java
  • python django 基础配置/常用命令

    1.项目文件中新增   test_settings.py  prd_settings.py

    2.py文件中区分项目的settings文件

    # 判断是否为生产环境
    ENV_PROFILE = os.getenv("ENV")
    if ENV_PROFILE == "test":
        import OpenTheDoor.test_settings as config
    elif ENV_PROFILE == "production":
        import OpenTheDoor.prd_settings as config
    else:
        import OpenTheDoor.settings as config

    3.常用命令

    windows 环境下无法获取 PUBTYPE=value ENV=value  所以开发环境默认使用 settings.py

    数据库迁移
    python manage.py makemigrations
    python manage.py migrate
    python manage.py createsuperuser
    
    测试环境
    PUBTYPE=app ENV=test python3 manage.py makemigrations --settings=hjgf.test_settings
    PUBTYPE=app ENV=test python3 manage.py migrate --settings=hjgf.test_settings
    
    生产环境
    PUBTYPE=app ENV=production python3 manage.py makemigrations --settings=hjgf.prd_settings
    PUBTYPE=app ENV=production python3 manage.py migrate --settings=hjgf.prd_settings
    PUBTYPE=app ENV=production python3 manage.py runserver 0.0.0.0:8000 --settings=hjgf.prd_settings
    PUBTYPE=app ENV=production python3 manage.py createsuperuser --settings=hjgf.prd_settings
    
    #下载所有静态资源文件到项目的static目录中
    python manage.py collectstatic
    新建app python manage.py startapp xxx 安装requirement.txt pip install -r requirements.txt 生成requirement.txt pip freeze > requirements.txt

    #导出数据
    python manage.py dumpdata [appname] >appname_data.json
    #导入数据 #根据自己的models,创建如下类似json文件
    python manage.py loaddata fixture.json

    4.进程守护配置文件

    [program:test]
    environment=PUBTYPE="app",ENV="test";
    directory=/app/project/       ; 执行前要不要先cd到目录去,一般不用
    command=python3 manage.py runserver 172.17.0.17:8001 --settings=OpenTheDoor.test_settings ;被监控的进程路径
    priority=7                    ;数字越高,优先级越高
    numprocs=1                    ; 启动几个进程
    autostart=true                ; 随着supervisord的启动而启动
    autorestart=true              ; 自动重启。。当然要选上了
    startretries=10               ; 启动失败时的最多重试次数
    exitcodes=0                   ; 正常退出代码(是说退出代码是这个时就不再重启了吗?待确定)
    stopsignal=KILL               ; 用来杀死进程的信号
    stopwaitsecs=10               ; 发送SIGKILL前的等待时间
    redirect_stderr=true          ; 重定向stderr到stdout
    
    
    [program:testcelery]
    environment=PUBTYPE="app",ENV="test";
    command=/usr/local/python3/bin/celery -A myCelery worker -B ;被监控的进程路径
    directory=/app/project/       ; 执行前要不要先cd到目录去,一般不用
    priority=7                    ;数字越高,优先级越高
    numprocs=1                    ; 启动几个进程
    autostart=true                ; 随着supervisord的启动而启动
    autorestart=true              ; 自动重启。。当然要选上了
    startretries=10               ; 启动失败时的最多重试次数
    exitcodes=0                   ; 正常退出代码(是说退出代码是这个时就不再重启了吗?待确定)
    stopsignal=KILL               ; 用来杀死进程的信号
    stopwaitsecs=10               ; 发送SIGKILL前的等待时间
    redirect_stderr=true          ; 重定向stderr到stdout
  • 相关阅读:
    python实现单线程多任务非阻塞TCP服务端
    sudo命令
    ajax 未加载出数据时,显示loding,数据显示后,隐藏loading
    ie7 解决圆角,阴影问题
    学习JavaScript你必须掌握的8大知识点!
    es6 个人笔记
    原生js,实现单选框
    原生js开发简单复选框,点击变颜色,再点击取消颜色,三种解决方法
    es6对象转数组
    JS正则截取两个字符串之间及字符串前后内容的方法
  • 原文地址:https://www.cnblogs.com/wangcongxing/p/13617381.html
Copyright © 2011-2022 走看看