迹忆客 专注技术分享

当前位置:主页 > 学无止境 >

Django 工作目录结构的最佳实践

作者:迹忆客 最近更新:2023/02/27 浏览次数:

Django 是一个出色的基于 Python 的开源 Web 开发框架,你可以使用它来创建全栈 Web 应用程序。由于它是一个框架,因此最初可以预期项目中有许多文件。对于初学者来说,一开始可能会让人不知所措,但没有什么可担心的;随着时间的推移,一切都会变得简单。

Web 应用程序有两个方面:开发和生产。与生产端相比,开发端有不同的设置。Django 应用程序有许多文件夹,例如 staticmediatemplates 等。由于 Django 已经存在一段时间了,你需要了解 Django 工作目录结构的最佳实践,以便在这方面取得更成功的项目区域。我们将在本文中讨论这些方法,请继续阅读!

Django 项目的目录结构应如下所示:

Project Folder/
    .gitignore    
    LICENSE.rst or LICENSE.md
    Documentation/
    README.rst or README.md
    environment
    requirements.txt
    MyProject/
        manage.py
        media/
        MyProject/
            __init__.py
            settings/
                __init__.py
                base.py
                development.py
                production.py
                .env
            urls.py
            wsgi.py
        AppOne/
            static/
                AppOne/
            templates/
                AppOne/
            urls.py
            views.py
            models.py
        AppTwo/
            static/
                AppTwo/
            templates/
                AppTwo/
            urls.py
            views.py
            models.py
        AppThree/
            static/
                AppThree/
            templates/
                AppThree/
            urls.py
            views.py
            models.py

根文件夹 Project Folder 包含 Django 项目和与该项目相关的所有其他文件,例如 licenseREADMEenvironmentrequirements.txt.gitignoreDocumentation or Docs

在 Django 项目 MyProject 中,应该有 manage.py 文件、media 文件夹、包含 settings.py 文件的 MyProject 文件夹和 Django 应用程序。

默认情况下,Django 为我们提供了一个 settings.py 文件和一些其他重要文件,例如 urls.pywsgi.py 等。settings.py 文件包含用于生产和发展。因此,对于更重要的项目,它的长度可以增加。

因此,将设置拆分为各自的文件是一个好主意。base.py 文件包含适用于开发和生产的设置。development.py 文件包含所有适用的开发设置,而 production.py 包含所有生产设置。

开发端和生产端可以有不同的数据库设置、密码验证设置、电子邮件设置、支付设置、API 密钥和其他配置。

如果你使用 Python Decouple 来存储敏感数据,.env 文件也应该在这个文件夹中。

每个 Django 应用程序都有一个 static 文件夹和一个 templates 文件夹。在这些文件夹中,将有另一个以应用程序名称命名的文件夹。在这些文件夹中,我们将放置所有静态文件和模板。

这种方法允许我们拥有多个具有相同名称的文件。例如,每个应用程序可能有一个 index.html 文件和一个 style.css,访问它们会变得更容易。

----------
HTML Files
----------
{% url 'AppOne/index.html' %}
{% url 'AppTwo/index.html' %}
{% url 'AppThree/index.html' %}

---------
CSS Files
---------
{% static 'AppOne/style.css' %}
{% static 'AppTwo/style.css' %}
{% static 'AppThree/style.css' %}

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Python 中的第一类函数

发布时间:2023/04/25 浏览次数:113 分类:Python

第一类函数是被语言视为对象或变量的函数。 我们可以将它们分配给变量或将它们作为对象传递给其他函数。Python 支持第一类函数的功能。

Python 函数参数类型

发布时间:2023/04/25 浏览次数:140 分类:Python

在这篇 Python 文章中,我们将学习 Python 中使用的函数参数类型。 我们还将学习如何编写不带参数的 Python 函数。

Python 生成器中的 send 函数

发布时间:2023/04/25 浏览次数:111 分类:Python

本教程将介绍如何在 Python 中使用生成器的 send() 函数。我们可以创建一个像迭代器一样运行的函数,并且可以通过 Python 生成器函数在 for 循环中使用。

Python Functools 偏函数

发布时间:2023/04/25 浏览次数:80 分类:Python

本文介绍了我们如何使用分部函数,该函数随 functools 库一起提供,并附有示例。 这显示了调用时如何传递属性和部分函数。

Python main() 函数中的参数

发布时间:2023/04/25 浏览次数:157 分类:Python

在本教程结束时,我们应该了解Python 中在 main() 中使用参数是否是一种好的做法。

Python 中的内置 identity 函数

发布时间:2023/04/25 浏览次数:88 分类:Python

identity 函数只是一个返回其参数的函数。 当我们定义一个恒等函数并赋值时,它会返回该值。在本教程结束时,我们将了解 Python 是否具有内置的 identity 函数。

在 Python 中拟合阶跃函数

发布时间:2023/04/25 浏览次数:177 分类:Python

阶跃函数是带有看起来像一系列步骤的图形的方法。 它们由一系列中间有间隔的水平线段组成,也可以称为阶梯函数。本文给出了阶跃函数的简单演示。

在 Python 中创建双向链表

发布时间:2023/04/25 浏览次数:54 分类:Python

双向链表是指由称为节点的顺序链接的记录集组成的链接数据结构。 每个节点包含一个前一个指针、一个下一个指针和一个数据字段。

将 Python 类对象序列化为 JSON

发布时间:2023/04/25 浏览次数:152 分类:Python

本教程介绍序列化过程。 它还说明了我们如何使用 toJSON() 方法使 JSON 类可序列化,并包装 JSON 以转储到其类中。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便