当前位置 : 主页 > 编程语言 > python >

django-生产和测试环境分离

来源:互联网 收集:自由互联 发布时间:2021-06-25
django-生产和测试环境分离 在settings.py的同级目录下新建settings的文件夹 在settings文件夹下新建 __init__.py base.py develop.py product.py 将settings.py里面的通用部分全部复制到base里面,变动的内容

django-生产和测试环境分离


  • 在settings.py的同级目录下新建settings的文件夹
  • 在settings文件夹下新建
    • __init__.py
    • base.py
    • develop.py
    • product.py
  • 将settings.py里面的通用部分全部复制到base里面,变动的内容如: 数据库的配置和DEBUG等除外
  • 在develop里面将base里的内容全部导入
    • from .base import *
    • 将数据库等变动的信息加入即可
  • 修改BASE_DIR
    • BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
    • BASE_DIR为项目的根目录,此时的根目录相对于该配置文件的上2级目录,就在原来的BASE_DIR的基础上面再加一层os.path.dirname即可
  • 修改wsgi和manage.py
    • 1 import os
      2 
      3 from django.core.wsgi import get_wsgi_application
      4 
      5 profile = os.environ.get(PROJECT_PROFILE, develop)
      6 
      7 os.environ.setdefault(DJANGO_SETTINGS_MODULE, ActivityApi.settings.%s % profile)
      8 
      9 application = get_wsgi_application()

      wsgi.py

    •  1 #!/usr/bin/env python
       2 """Django‘s command-line utility for administrative tasks."""
       3 import os
       4 import sys
       5 
       6 
       7 def main():
       8     profile = os.environ.get(PROJECT_PROFILE, develop)
       9     os.environ.setdefault(DJANGO_SETTINGS_MODULE, ActivityApi.settings.%s % profile)
      10     try:
      11         from django.core.management import execute_from_command_line
      12     except ImportError as exc:
      13         raise ImportError(
      14             "Couldn‘t import Django. Are you sure it‘s installed and "
      15             "available on your PYTHONPATH environment variable? Did you "
      16             "forget to activate a virtual environment?"
      17         ) from exc
      18     execute_from_command_line(sys.argv)
      19 
      20 
      21 if __name__ == __main__:
      22     main()

      manage.py

  • 启动
    • python manage.py runserver
    • pycharm启动
      •  

         

         

         

网友评论