• Djangohou'项目搭建


    一. 环境#

    Copy
    # 为luffy项目创建一个虚拟环境
    >: mkvirtualenv luffy
    
    # 按照基础环境依赖
    >: pip install django==2.2.2     # 安装2.0.7以上的版本, 使用mysql数据库的时候会出现异常, 我们接下来修改源码来解决这种问题
    >: pip install djangorestframework
    >: pip install pymysql
    

    二. 创建项目#

    Copy
    前提:在目标目录新建luffy文件夹
    >: cd 建立的luffy文件夹
    >: django-admin startproject luffyapi
    
    开发:用pycharm打开项目,并选择提前备好的虚拟环境
    

    三. 重构项目目录#

    重构前:

    image-20200716192931088

    重构后:

    image-20200716194831336

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

    四. 重构后的配置#

    Copy
    1. 修改 wsgi.py 与 manage.py 两个文件
    # manage.py 项目没上线时runserver走的配置 (见图一)
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.dev')
    # wsgi.py   项目上线时runserver走的配置   (见图二)
    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)
    

    图一: settings.py文件修改以后在项目没上线时走manage.py的设置:

    image-20200716194243345

    图二: 如果点击pycharm的启动按钮, 而不是输入命令启动, 出现启动问题的配置:

    Copy
    PYTHONUNBUFFERED=1;DJANGO_SETTINGS_MODULE=luffyapi.settings.dev
    

    ![image-20200716194714972](04 luffy后台Django项目创建.assets/image-20200716194714972.png)

    图三: settings.py文件修改以后在项目上线时走wsgi.py的设置:

    image-20200716194800713

    五. 指定.py文件出现问题#

    启动如下命令出现错误:

    Copy
    from django.conf import settings
    print(settings)
    
    '''
    django.core.exceptions.ImproperlyConfigured: Requested settings, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
    '''
    

    解决: 到编辑配置 -> Templdates -> Python -> Environment variables输入

    Copy
    PYTHONUNBUFFERED=1;DJANGO_SETTINGS_MODULE=luffyapi.settings.dev
    
    # .py文件中执行
    from django.conf import settings
    print(settings)
    
    '''
    <Settings "luffyapi.settings.dev">
    <Settings "luffyapi.settings.dev">
    '''
    

    image-20200716201814422

    image-20200716201845253

  • 相关阅读:
    eclipse基础环境配置和svn、maven的配置以及maven的安装
    KindEditor 上传图片浏览器兼容性问题
    FastDFS 工具类实现文件上传_02
    FastDFS 实现图片上传_01
    jvm 堆、栈 、方法区概念和联系
    jvm 虚拟机的组成部分
    利用jQuery实现CheckBox全选/全不选/反选
    FastDFS架构
    Nginx 实现负载均衡
    Nginx 实现反向代理
  • 原文地址:https://www.cnblogs.com/Tornadoes-Destroy-Parking-Lots/p/13435940.html
Copyright © 2020-2023  润新知