# Django 5.2.9 문서

# 다음에 읽을 내용

당신은 지금까지 소개 자료를 모두 읽었으며 Django를 계속 사용하기로 결정했습니다. 하지만 우리는 이 소개 자료로 그저 겉핥기를 했을뿐 입니다 (실제로 단어수로 세어보면 전체 문서의 약 5%를 읽은것 입니다.).

그럼 다음은 뭘 하죠?

Well, we’ve always been big fans of learning by doing. At this point you should know enough to start a project of your own and start fooling around. As you need to learn new tricks, come back to the documentation. There’s also a bigger Django ecosystem out there for you to explore that the community has created.

우리는 Django의 문서를 최대한 유용하고 명확하며 완벽하게 만들기 위해 많은 노력을 기울였습니다. 이 문서의 나머지 부분에서는 문서를 최대한 활용할 수 있도록 설명서의 작동 방식에 대해 자세히 설명할 것입니다.

(예, 이것은 문서에 대한 문서입니다. 문서에 대한 문서를 읽는 방법에 대한 문서를 작성할 계획이 없으니 안심하십시오.)

## 문서 찾기

Django는 약 45만 개의 단어와 숫자를 셀 수 있는 많은 문서를 가지고 있습니다. 그래서 필요한 것을 찾는 것은 가끔 어려울 수 있습니다. 먼저 :ref:`genindex`를 사용하는 것이 좋습니다. 또한 기본 제공 검색 기능을 사용하는 것이 좋습니다.

아니면 그냥 둘러 볼 수 있습니다!

## 이 문서의 구조

Django의 주요 문서는 서로 다른 필요를 채우기 위해 설계된 “덩어리”로 나뉩니다.

- introductory material 는 일반적으로 Django를 처음 접하거나 웹 개발을 하는 사람들을 위해 만들어졌습니다. 이 책은 깊이 있는 내용을 다루지 않고, Djagno의 발전 과정을 개괄적으로 보여줍니다.

- 반면에 주제 가이드는 장고의 각 부분에 깊이 들어가 있습니다. Django에 대한 완전한 가이드가 있습니다 모델 시스템, 템플릿 엔진, 폼 프레임워크, 그리고 이외에 더 많은것들이 있지요.

  아마도 여기서 대부분의 시간을 보내고 싶어 할 것입니다. 이 가이드를 통해 길을 찾으면 장고에 대해 알아야 할 모든 것을 알게됩니다.

- 웹 개발은 종종 광범위하지 않고 심층적이지 않은 문제가 많은 영역에 걸쳐 있습니다. 우리는 공통적인 “어떻게 해야 합니까?”에 대해 답하는 how-to 가이드 세트를 작성했습니다. Django로 PDF 생성하기, 사용자 정의 템플릿 태그 작성하기 등의 정보를 찾을 수 있습니다.

  정말로 일반적인 질문에 대한 답은 FAQ 에서도 찾을 수 있습니다.

- 가이드와 하우투는 장고에서 사용 가능한 모든 클래스, 함수 및 메소드를 다루지는 않습니다. 이는 그저 배우려고 할 때 보기에는 좀 지나친 것입니다. 대신 개별 클래스, 함수, 메소드 및 모듈에 대한 세부 정보는 reference 에 보관됩니다. 여기서 특정 기능 또는 원하는 기능의 세부 정보를 찾을 수 있습니다.

- 공개적으로 프로젝트를 배포하는 데 관심이 있다면, 다양한 배포 설정을 위한 여러 가지 안내서 뿐만 아니라 생각해볼 만한 배포 체크리스트 가 있습니다.

- 마지막으로, 대부분의 개발자와는 관련이 없는 “전문화 된” 설명서가 있습니다. 여기에는 Django 자체에 코드를 추가하려는 사람들을 위한 release notes 및 internals documentation, 그리고 :doc:`few other things that don’t fit elsewhere </misc/index>`들이 있습니다.

## 문서는 어떻게 업데이트 되는가

Django 코드 기반이 매일 개발되고 개선되는 것처럼 우리의 문서는 지속적으로 개선되고 있습니다. 몇 가지 이유로 문서를 개선합니다.

- 문법/오타 수정과 같은 내용 수정.

- 확장해야 할 기존 섹션에 정보 또는 예제를 추가합니다.

- 아직 문서화되지 않은 Django 기능을 문서화합니다. (이러한 기능 목록은 줄어들지 만 그럼에도 불구하고 존재합니다.)

- 새로운 기능이 추가되거나 Django API 또는 동작이 변경됨에 따라 새로운 기능에 대한 문서를 추가 할 수 있습니다.

Django의 문서는 소스 코드와 동일한 소스 코드 관리 시스템에서 보관됩니다. 이 문서는 Git 저장소의 :source: docs 디렉토리에 있습니다. 각 온라인 문서는 저장소에 있는 분리된 텍스트 파일입니다.

## 어디서 구할 수 있습니까?

Django 문서는 여러 가지 방법으로 읽을 수 있습니다. 그들은 선호 순서대로:

### 웹 상에서

Django 최신 버전 문서는 https://docs.djangoproject.com/en/dev/에 있습니다. 소스 컨트롤의 텍스트 파일에서 이 HTML 페이지들이 자동으로 생성됩니다. 즉 Django의 “최신이자 최고”가 반영됩니다. 최신 수정 및 추가사항을 포함하며, Django 개발 버전에만 있을 수도 있는 최신 Django 기능을 다룹니다.(아래의 버전 간 차이점 참조)

ticket system에서 변경 사항, 수정 사항 및 제안 사항을 제출하여 문서 개선에 도움을 받으시기 바랍니다. Django 개발자는 티켓 시스템을 적극적으로 모니터링하고 여러분의 피드백을 사용하여 모든 사람의 문서를 개선합니다.

Note, however, that tickets should explicitly relate to the documentation, rather than asking broad tech-support questions. If you need help with your particular Django setup, try the Django Forum or the Django Discord server instead.

### 일반 텍스트

오프라인 읽기 또는 편의를 위해 Django 문서를 일반 텍스트로 읽을 수 있습니다.

Django 공식 릴리스를 사용하고 있다면, 코드의 압축된 패키지(tarball)에 `docs/` 디렉터리가 있으며, 그곳에 해당 릴리스 문서가 있습니다.

Django의 개발 버전(일명 main branch)을 사용하는 경우 ‘’docs/’’ 디렉토리에 모든 문서가 포함되어 있습니다. Git checkout을 업데이트하여 최신 변경 사항을 얻을 수 있습니다.

텍스트 문서를 활용하는 하나의 낡은 기술은 Unix의 `grep` 유틸리티를 사용하여 모든 문서에서 문구를 검색하는 것입니다. 예를 들어 이 명령은 Django 문서에서 “max_length” 라는 문구가 언급된걸 보여줍니다:

/ 

    $ grep -r max_length /path/to/django/docs/

    ...\> grep -r max_length \path\to\django\docs\

### 로컬 HTML

다음 몇 단계를 거쳐 HTML 문서의 로컬 복사본을 얻을 수 있습니다.

- Django의 문서에서는 Sphinx라는 시스템을 사용하여 일반 텍스트를 HTML로 변환합니다. Sphinx 웹 사이트에서 패키지를 다운로드하고 설치하거나 “pip”로 설치해야합니다.

  / 

      $ python -m pip install Sphinx

      ...\> py -m pip install Sphinx

- 포함된 ``Makefile``을 사용해서 문서를 HTML로 바꾸세요:

      $ cd path/to/django/docs
      $ make html

  이것을 위해 GNU Make가 설치되어 있어야 합니다.

  Windows를 사용하는 경우 포함 된 배치 파일을 대신 사용할 수 있습니다.

      cd path\to\django\docs
      make.bat html

- HTML 문서는 `docs/_build/html`에 있습니다.

## 버전 간 차이점

Git 저장소의 main branch에 있는 문서에는 “최신이자 최고의” 변경사항과 추가사항이 포함되어 있습니다. 이러한 변경사항에는 Django의 다음 :term:`feature release <Feature release>`를 대상으로 하는 새로운 기능에 대한 문서화가 포함됩니다. 그런 이유로 최근 Django에 대한 변화와 추가 사항을 부각시키는 우리 정책을 짚어볼 필요가 있습니다.

우리는 다음과 같은 정책을 따릅니다.

- https://docs.djangoproject.com/en/dev/의 개발 문서는 main branch에서 가져온 것입니다. 이 문서는 최신 기능 release와 그 이후 프레임워크에 추가/변경된 모든 기능에 해당합니다.

- Django의 개발 버전에 기능을 추가함에 따라, 같은 Git 커밋 트랜잭션에 문서를 갱신합니다.

- 문서에서 기능 변경/추가를 구분하기 위해, 아직 릴리스되지 않은 Django 버전에 대해서는 “New in Django Development version”으로, 릴리스된 버전에 대해서는 “New in version X.Y”로 표현합니다.

- 문서 수정 및 개선은 커미터의 재량에 따라 최신 릴리스 브랜치에 백포트될 수 있습니다. 그러나, Django 버전이 더 이상 지원되지 않는 경우, 해당 버전 문서는 갱신되지 않습니다.

- The `main documentation web page`_에는 이전 버전의 설명서에 대한 링크가 포함되어 있습니다. 사용 중인 Django 버전에 해당하는 문서 버전을 사용하고 있는지 확인하십시오!