暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Django入门--项目结构

Python练习生 2022-12-18
451

manage.py  包含项目管理的子命令,如:

  • python3 manage.py runserver 启动服务

  • python3 manage.py startapp 创建应用

  • python3 manage.py makemigrations 生成数据库

  • python3 manage.py migrate 数据库迁移

  • ......

  • 直接执行python3 manage.py 可列出所有的Django子命令


项目同目录文件夹

  • __init__:python包的初始化文件

  • wsgi.py:web服务网关的配置文件- Django正式启动时,需要用到

  • urls.py:项目的主路由配置-HTTP请求进入Django时,调用该文件

  • settings.py:项目的配置文件-包含项目启动时需要的配置


settings.py 

  • 包含了Django项目启动的所有配置项

  • 配置项分为共有配置自定义配置

  • 配置项格式例:BASE_DIR = 'XXX'

  • 共有配置- Django官方提供的基础配置


共有配置

  • ALLOWED_HOSTS

    • 设置允许访问到本项目的host头值

    • [ ]空列表,表示只有请求头中host为127.0.0.1,localhost能访问本项目 -DEBUG=True时有效

    • ['*'],表示任何请求头的host都能访问到当前项目

    • ['192.168.1.3','127.0.0.1']表示只有当前两个host头的值能访问当前项目

    • 示例:如果要在局域网其他主机也能访问此主机的Django服务,启动方式如下:

    • python3 manage.py runserver 0.0.0.0:5000

    • 指定网络设备如果内网环境下其他主机想正常访问该站点,需加ALLOWED_HOSTS=['内网']

  • BASE_DIR

    • 用于绑定当前项目的绝对路径(动态计算出来的),所有文件夹都可以依赖此路径

  • DEBUG

    • 用于配置Django项目启动模式,取值:

    • True表示开发环境,处于调试模式(用于开发中)

    • False表示当前项目运行在生产环境中

  • INSTALLED_APPS -指定当前项目中安装的应用列表

  • MIDDLEWARE-用于注册中间件

  • TEMPLATES-用于指定模板的配置信息

  • DATABASES-用于指定数据库的配置信息

  • LANGUAGE_CODE-用于指定语言配置

    • 英文:“en-us"

    • 中文:"zh-Hans"

  • TIME_ZONE-用于指定档期服务器端时区

    • 世界标准时间:"UTC"

    • 中国时区:"Asia/Shanghai"

  • ROOT_URLCONF-用于配置主url配置'xxxx.urls'

    • ROOT_URLCONF = 'xxxx.urls'

  • STATIC_URL-配置静态文件(图片、JS、CSS等)

  • ‍DEFAULT_AUTO_FIELD-默认的主键字段类型,用于没有带有 primary_key=Ture字段的模型


自定义配置

  • settings.py中可以添加开发人员自定义的配置

  • 配置建议:名字尽量个性化-以防覆盖掉共有配置

  • settings.py中的所有配置项都可以按需在代码中引入,引入方式:from django.conf import settings

实例如下图:

文章转载自Python练习生,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论