Django 작업 디렉터리 구조에 대한 모범 사례

Vaibhav Vaibhav 2021년6월29일
Django 작업 디렉터리 구조에 대한 모범 사례

Django는 풀 스택 웹 애플리케이션을 만드는 데 사용할 수있는 환상적인 Python 기반의 오픈 소스 웹 개발 프레임 워크입니다. 프레임 워크이기 때문에 처음에는 프로젝트 내에서 많은 파일을 기대할 수 있습니다. 처음에는 초보자에게 너무 압도적 일 수 있지만 걱정할 것은 없습니다. 시간이 지나면 모두 단순 해 보일 것입니다.

웹 애플리케이션에는 개발과 생산이라는 두 가지 측면이 있습니다. 개발 측은 프로덕션 측과 비교하여 다른 설정을 가지고 있습니다. Django 응용 프로그램에는static,media,templates등과 같은 많은 폴더가 있습니다. 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 프로젝트와license,README,environment,requirements.txt,.gitignoreDocumentation or Doc과 같은 프로젝트와 관련된 기타 모든 파일이 포함됩니다.

Django 프로젝트 폴더

Django 프로젝트MyProject내에manage.py파일,media폴더,settings.py파일이 포함 된MyProject폴더 및 Django 애플리케이션이 있어야합니다.

Django 프로젝트 설정 폴더

기본적으로 Django는 단일settings.py파일과urls.py,wsgi.py등과 같은 기타 중요한 파일을 제공합니다.settings.py파일에는 프로덕션 및 개발. 따라서 더 중요한 프로젝트를 위해 길이가 늘어날 수 있습니다.

따라서 설정을 각각의 파일로 분할하는 것이 좋습니다. base.py파일에는 개발 및 프로덕션 모두에 적용되는 설정이 포함되어 있습니다. development.py파일에는 개발에 적용 할 수있는 모든 설정이 포함되어 있으며production.py에는 모든 프로덕션 설정이 있습니다.

개발 및 프로덕션 측은 서로 다른 데이터베이스 설정, 암호 유효성 검사 설정, 이메일 설정, 결제 설정, API 키 및 기타 구성을 가질 수 있습니다.

Python Decouple을 사용하여 민감한 데이터를 저장하는 경우.env파일도이 폴더에 있어야합니다.

Django 애플리케이션

모든 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' %}
Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.