Django의 마법 이해하기
게시 됨: 2022-03-10공식 문서에 따르면,
Django는 빠른 개발과 깨끗하고 실용적인 디자인을 장려하는 고급 Python 웹 프레임워크입니다. 숙련된 개발자가 구축한 이 앱은 번거로운 웹 개발을 대부분 처리하므로 다시 개발할 필요 없이 앱 작성에 집중할 수 있습니다. 무료이며 오픈 소스입니다.
— DjangoProject.com
웹 애플리케이션을 구축하기 위한 Python의 인기 있는 프레임워크 중 하나이며 배치된 구성 및 파일로 상용구를 생성할 때 확장성으로 가장 선호됩니다. 이것은 개발자를 위한 Django의 전체 목표를 마무리합니다.
"...짧은 시간에 훌륭한 애플리케이션을 구축하고 기본 설정에 대한 걱정을 덜 수 있습니다."
무엇을 구축하든 모든 웹 애플리케이션에 적용되는 기본 구성, 파일 및 스타일이 있습니다. Django를 사용할 때 애플리케이션 개발 주기의 다른 지점에서 특정 명령을 실행할 때 자동으로 생성됩니다. 이를 통해 Django가 다른 부분을 처리하는 동안 애플리케이션 개발의 핵심 측면에 집중할 수 있는 충분한 시간을 갖게 됩니다.
그것은 후드 아래에서 많은 일들이 일어나고 있음을 의미합니다. 움직이는 부분을 완전히 이해하지 못하는 사람에게는 이것이 압도적일 수 있습니다. 이 기사에서는 다음에 대해 배울 것입니다.
- 장고 설치
-
startproject
및startapp
명령 - 다음을 포함하는 Django 구성 파일;
- settings.py
- urls.py
- 관리하다.py
- 모델 레이아웃
- 라우팅
우리는 이 모든 것이 어떻게 조화를 이루고 어떤 역할을 하는지 배울 것입니다. Django 내부에서 일어나는 모든 일을 살펴보는 것이 불가능하다는 것을 아는 것이 중요합니다. 이 자습서의 범위를 벗어나는 경우에 도움이 될 리소스로 연결되는 링크가 있습니다.
학습 목적으로 전자 상거래 플랫폼을 구축합니다. 이것은 완전한 전자 상거래 사이트가 아니며 우리 응용 프로그램에는 두 가지 기본 기능만 있습니다. 관리자의 관점에서 제품을 만들고 주문합니다.
이 기사는 Django의 사전 빌드된 명령, 파일 및 기본 사항을 이해하는 방법을 안내합니다. Django를 사용했거나 사용하려는 개발자를 대상으로 하며 내부에서 어떤 일이 발생하는지 알고 싶습니다. Django를 반드시 사용해야 하는 것은 아니지만 이 기사를 계속 진행하기 전에 Django의 기본 사항에 대한 경험이 있으면 이점이 있습니다. 이 글에서 다룰 내용을 완전히 이해하려면 Python에 대한 실무 지식이 필요합니다.
장고 설치
Django가 아직 설치되어 있지 않다면 다음 단계를 따르세요.
먼저 djangodev
라는 가상 환경을 만듭니다. Django 작업 공간과 종속 패키지를 분리하려면 이것이 필요합니다.
python3 -m venv ~/.virtualenvs/djangodev
이제 가상 환경에 들어가려면 활성화해야 합니다.
source ~/.virtualenvs/djangodev/bin/activate
source
로 실행하는 동안 오류가 발생하면 이 대체 명령을 사용할 수 있습니다.
. ~/.virtualenvs/djangodev/bin/activate
Windows 사용자의 경우 대신 이것을 사용하십시오.
...\> %HOMEPATH%\.virtualenvs\djangodev\Scripts\activate.bat
참고: Django를 사용하려면 언제든지 가상 환경을 활성화해야 합니다.
이제 가상 환경에 있으므로 Django를 설치합니다.
python -m pip install Django
Django가 제대로 설치되었는지 확인하려면 다음을 실행하십시오.
python -m django --version
샤카붐! 이제 마법을 사용할 준비가 되었습니다. 지팡이를 준비하세요!
이동 중에 파일과 폴더를 만드는 방법은 간단하고 간단할 수 있습니다. 그러나 중대형 프로젝트를 만들고 마감 기한을 지켜야 하는 경우에는 이상적이지 않습니다. 개인 프로젝트의 경우에도 항상 마감 기한이 있습니다.
새로운 대규모 프로젝트를 만들 때 이 방법을 따르면 여러 파일과 폴더를 만들고 여러 설정을 지정해야 하므로 피할 수 있는 버그가 생성되고 많은 시간이 낭비될 수 있습니다. Django를 통해 사용할 수 있는 startproject
및 startapp
명령은 이 문제를 해결하는 것을 목표로 합니다. 이 두 명령은 파일, 폴더를 만들고 많은 구성을 수행합니다.
startproject
명령을 사용하여 새 애플리케이션을 생성하여 시작하겠습니다.
애플리케이션 스캐폴딩
애플리케이션을 생성하고 생성된 파일과 사용할 몇 가지 명령을 살펴보겠습니다. 시작하려면 터미널에서 이 명령을 실행하십시오.
django-admin startproject ecommerce_site
Django를 설치할 때 django-admin
이 경로에 추가되어 해당 작업을 수행할 수 있는 액세스 권한을 부여합니다. 관리 책임을 위한 Django의 명령줄 유틸리티입니다. 여기에서 django-admin
사용에 대해 자세히 알아보세요. 이 기사의 범위를 약간 벗어납니다.
startproject
는 프로젝트를 생성 하는 데 도움이 되는 Django 명령입니다. 여기에서 ecommerce_site 프로젝트 이름을 전달합니다. 그런 다음 ecommerce_site 라는 디렉토리에 프로젝트를 생성합니다. 디렉토리는 다음과 같아야 합니다.
새로 생성된 디렉토리로 이동하고 명령을 실행 하여 앱을 생성해야 합니다 .
cd ecommerce_site python manage.py startapp trading
startapp
은 프로젝트 디렉토리에서 manage.py
에 의해 실행되는 명령으로, 여러 개의 파일을 생성하고, 명령에 지정된 이름을 사용하여 이름이 지정된 폴더(이 경우 지정된 것은 trading
입니다. 앱 폴더는 애플리케이션의 기능을 생성하는데 필요한 간단한 파일들로 구성되어 있습니다. 이제 디렉토리는 다음과 같아야 합니다.
프로젝트와 앱의 차이점이 궁금하다면. 프로젝트는 Django 웹 애플리케이션이며 하나 이상의 앱으로 구성될 수 있습니다. manage.py
가 들어 있는 폴더와 settings.py
및 기타 파일을 포함하는 다른 모듈 입니다. 앱은 특정 기능을 수행하는 Python 패키지로, models.py
, 마이그레이션 디렉토리 등과 같은 파일을 포함합니다. 자세한 내용은 스택 오버플로에서 이 답변을 확인할 수 있습니다.
startproject
는 기본 프로젝트 디렉토리를 생성하고 startapp
은 앱 디렉토리를 생성합니다. 둘 다 세대에 사용되는 이름도 전달되었습니다. startproject
는 새 프로젝트를 생성할 때 실행되는 첫 번째 명령이고 startapp
은 새 프로젝트 디렉토리 내에서 실행됩니다.
현재 레이아웃은 구축 중인 모든 애플리케이션에 사용할 수 있는 훌륭한 매핑입니다. 확장 가능하며 필요한 파일로 구성됩니다. 프로젝트 내에서 파일을 생성, 이름 변경, 편집 및 이동할 수 있습니다.
Django의 설정
Django는 서로 다른 설정과 구성을 제공합니다. 서로 다른 파일에서 두 명령을 실행한 후 생성된 파일을 실행하여 각각이 수행하는 작업을 알아보겠습니다.
settings.py
대부분의 웹 애플리케이션에는 다음과 같은 구성이 필요합니다. 사용자를 확인하기 위한 인증, 특정 능력을 가진 특정 사용자를 허용하고 보안 표준을 설정하는 권한. 이 모든 것은 사용자에게 필요한 최상의 경험을 제공하는 데 필요합니다. 개발자로서 작업하는 모든 응용 프로그램에 대해 이러한 각 항목을 스스로 롤링하기 시작하려면 오랜 시간이 걸립니다.
Django는 필요한 구성 등을 제공하므로 원하는 구성을 선택하고 연결할 수 있습니다. 이는 settings.py
에서 수행되며 기본 기능을 제공하기 위해 생성된 설정이 이미 있습니다.
Django가 프로젝트를 실행하려고 할 때 찾는 특정 변수가 있습니다. settings.py
는 다른 파일이나 정보로 이어지는 변수를 담고 있는 파일입니다. Django는 manage.py
파일에서 이 파일로 이동하고 여기에서 정보를 가져오거나 다른 파일을 로드합니다.
이러한 구성에는 다음이 포함됩니다.
-
DEBUG
DEBUG
기능은 개발 중에 오류를 읽고 코드를 디버깅할 수 있도록True
로 설정되며 프로덕션 중에(즉, 배포할 때)False
로 설정해야 합니다. 이 설정을 사용하면 Django가 코드를 실행하려고 할 때 Django의 도움으로 코드를 더 잘 디버그할 수 있습니다. -
INSTALLED_APPS
이것은 Django에서 특정 기능을 수행하는 모든 앱의 목록입니다. 사용자 인증에 사용되는'django.contrib.auth'
django.contrib.admin'
관리 기능에 사용되는 django.contrib.admin, 사용자에게 알림 또는 정보를 보내는 데 필요한'django.contrib.messages'
와 같은 일부 기본 앱이 함께 제공됩니다.startapp
명령을 사용하여 생성한 다른 모든 앱은 Django에서 실행하기 전에 여기에 있어야 합니다. -
MIDDLEWARE
는 Django 요청 및 응답을 통과하는 입력 및 출력을 처리하기 위한 경량 프레임워크입니다. 각 미들웨어는'django.contrib.auth.middleware.AuthenticationMiddleware'
'django.contrib.sessions'
함께 사용자를 요청과 연결합니다. 문서에서 각 미들웨어의 추가 기능을 확인해야 합니다. -
ROOT_URLCONF
는 요청이 Django 애플리케이션에 전달될 때 Django가urlpatterns
를 찾는 경로에 대한 변수입니다. Django 애플리케이션에서 요청이 있을 때마다 Django는 이 변수를 검색하고 선행 파일을 로드하고 일치하는 경로를 검색하기 위해urlpatterns
목록을 반복합니다. -
TEMPLATES
는 뷰를 나타내는 HTML 파일의 렌더링을 허용하는 설정입니다. 요청, 인증 및 메시지 앱과 통신합니다.'BACKEND'
값과'APP_DIRS'
를True
로 설정하면 Django가 /templates 폴더 내에서 HTML 파일을 검색할 수 있습니다.OPTIONS
의'context_processors'
는 요청을 인수로 받아 템플릿이 렌더링될 때 컨텍스트와 병합하는 호출 가능 항목으로, 이러한 호출 가능 항목은 일반적으로 요청의 디버깅, 인증 및 처리에 도움이 되도록 작동합니다. -
WSGI_APPLICATION
은wsgi.py
파일에서application
변수로 이어지는 경로이다. -
DATABASE
는 PostgresSQL, MySQL 및 MongoDB와 같은 외부 데이터베이스(또는 기본 sqlite의 경우와 같이 내부 데이터베이스)에 대한 액세스를 보유하는 사전입니다. 다음은 이 예에서 사용할 Postgres 데이터베이스의 예입니다.
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'db_name', 'USER': 'db_user', 'PASSWORD': 'db_password', 'HOST': 'localhost', 'PORT': '', } }
기본 sqlite 데이터베이스를 사용하기로 결정할 수 있습니다. 이것은 프로덕션에 적합하지 않습니다. 위와 같이 Postgres 데이터베이스를 설정할 수 있습니다. 먼저 데이터베이스를 생성하고 데이터베이스에 쓰기 권한이 있는 사용자, 비밀번호를 전달해야 합니다.
참고 : 이 튜토리얼의 목적을 위해 이미 기본 sqlite 데이터베이스 세트를 사용할 수 있습니다. 위의 내용은 Django에서 SQL 및 NO-SQL 데이터베이스 연결을 설정하는 방법에 대한 데모입니다.
-
AUTH_PASSWORD_VALIDATORS
비밀번호 유효성 검사를 위해 호출되는 함수입니다. 사용자(및 관리자) 레코드를 생성하고 비밀번호를 재설정 및 변경할 때 호출됩니다. 공식 문서에서 더 자세히 알아볼 수 있습니다.
설정에 대한 추가 문서는 여기에서 찾을 수 있습니다.
manage.py
대부분의 웹 프로젝트에는 명령이 시작되는 진입점이 필요합니다. 애플리케이션에 대한 게이트웨이 역할을 하는 진입점입니다. 모든 Django 프로젝트에서 일반적으로 manage.py
파일입니다.
이 파일은 애플리케이션의 시작점으로 필요합니다. 여기에서 모든 명령이 실행되고 모든 것이 여기에서 시작됩니다.
manage.py
는 django-admin과 동일한 기능을 합니다. 또한 애플리케이션에 있는 구성의 위치를 Django에 알려줍니다. 이것은 기본적으로 설정되어 있으며 변경할 필요가 없습니다.
def main()
함수를 사용하여 settings.py
파일에 대한 기본 설정 모듈을 처리합니다. 실행 함수를 가져오려고 시도하고 오류가 발생하면 ImportError
가 발생합니다. 그렇지 않으면 명령줄에서 sys.argv
에 의해 전달된 인수를 가져와 실행합니다.
sys.argv
는 터미널을 통해 전달된 명령을 받는 목록입니다. 명령줄에서 python manage.py runserver
를 실행하면 sys.argv
가 ["manage.py", "runserver"]
로 설정되고 이것이 execute()
함수로 전달됩니다.
python manage.py startapp trading
또는 python manage.py makemigrations
와 같은 인수는 실행을 위해 각각 [ "manage.py", "startapp", "trading"]
및 ["manage.py", "makemigrations"]
로 설정됩니다.
if 문은 주어진 명령이 manage.py
로 설정된 경우 실행되도록 설정됩니다.
django-admin
기능을 실행하는 것 외에도 실행 중인 서버에서 이를 사용하고 프로젝트에서 사용할 마이그레이션 및 기타 명령을 처리합니다. 프로젝트를 배포, 테스트 및 디버깅할 때도 필요합니다.
모델 레이아웃
Django는 간단한 모델링 레이아웃을 제공합니다. trading
디렉토리의 models.py
파일에서 모델을 구성합니다. 클래스(또는 모델)는 데이터베이스 테이블이 따를 레이아웃입니다.
각 테이블에 대해 사용자(또는 관리자)로부터 얻고자 하는 데이터 유형을 기반으로 클래스를 정의합니다. 우리 모델은 settings.py
의 DATABASE
변수와 함께 작동하는 마이그레이션 파일을 생성합니다.
제품과 주문에 필요한 두 가지 모델을 만들어 보겠습니다.
from django.db import models class Product(models.Model): name = models.CharField(max_length=50) image = models.ImageField(upload_to='products', default='python.png') price = models.IntegerField() description = models.TextField() def __str__(self): return self.name class Order(models.Model): product = models.ForeignKey(Product, on_delete=models.CASCADE) quantity = models.IntegerField() date = models.DateField(auto_now_add=True) user = models.CharField(max_length=50) def __str__(self): return self.user
제품 모델에는 이름, 가격, 설명 및 이미지(저장 시 products
폴더에 업로드됩니다. 폴더가 없는 경우 생성됨) 열이 있습니다. order
에는 product
( products
테이블에 연결됨), 수량, 날짜 및 사용자 열이 있습니다.
이 정보를 사용하여 Django는 앱에 대한 데이터베이스 스키마를 생성합니다. 또한 제품 및 주문 개체에 액세스하기 위한 Python 데이터베이스 액세스 API를 만듭니다. Django에는 마이그레이션 도구가 내장되어 있으므로 마이그레이션을 위해 외부 패키지를 사용할 필요가 없습니다.
다음 단계는 마이그레이션 명령을 실행하고 데이터베이스로 마이그레이션하는 것입니다. 하지만 그 전에 프로젝트 디렉토리에 앱으로 trading
를 등록해야 합니다.
먼저 Django에서 거래 디렉토리를 앱으로 구성해야 합니다. Django는 app.py
파일에서 이를 수행합니다. 이 파일은 trading
를 앱으로 등록하고 settings.py
파일에서 계속 사용됩니다.
이제 settings.py
에서 INSTALLED_APP
에 trading
를 추가합니다. 다음과 같이 표시되어야 합니다.
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'trading.apps.TradingConf', ]
터미널에서 다음을 실행합니다.
$ python manage.py makemigrations trading $ python manage.py migrate
참고: 가상 환경이 활성화되어 있어야 하며 프로젝트 디렉토리 안에 있어야 합니다.
python manage.py makemigrations trading
은 거래 모듈의 변경 사항을 기록하고 models.py
및 python manage.py migrate
의 변경 사항을 migration
폴더에 만든 다음 변경 사항을 업데이트합니다.
0001_initial.py
라는 migration
디렉토리의 python manage.py makemigrations trading
명령에서 생성된 마이그레이션 파일을 찾을 수 있습니다. 파일 내에서 생성을 위한 명령으로 클래스와 열을 볼 수 있습니다. models.py
가 더 많이 변경되면 더 많은 파일이 여기에 생성됩니다.
관리 기능
현재 애플리케이션에서는 애플리케이션에서 생성될 제품 및 주문을 관리하기 위한 관리 기능이 필요합니다. Django는 이미 사용할 수 있는 내장된 관리 기능을 제공합니다. 관리자 앱(기능)도 INSTALLED_APP
목록에 등록되었습니다. 'django.contrib.admin'
.
또한 관리자의 URL은 URL 구성 파일 urls.py
의 urlpatterns
목록에도 등록되었습니다. path('admin/', admin.site.urls),
. admin.py
파일을 사용하면 모델과 모델에서 수행할 CRUD 작업을 등록할 수 있습니다.
관리자를 설정하려면 터미널에서 다음을 실행하십시오.
$ python manage.py createsuperuser
사용자 이름, 이메일 및 비밀번호를 입력하라는 메시지가 표시됩니다. 그런 다음 성공적으로 관리자를 만들었습니다. 관리 기능을 시작하려면 서버를 실행하세요.
$ python manage.py runserver
https://127.0.0.1:8000/admin/을 방문하면 로그인 세션으로 연결되며, 로그인할 때(만든 사용자 이름과 비밀번호로) 관리자 대시보드로 연결됩니다.
그룹 및 사용자는 관리자가 사용자 관리 및 권한에 액세스할 수 있도록 하는 기본 구성입니다. 이제 모델을 등록해 보겠습니다.
admin.py
에서 다음 줄을 추가합니다.
from django.contrib import admin # Register your models here. from .models import Product, Order admin.site.register(Product) admin.site.register(Order)
from django.contrib import admin
은 Django에서 관리 기능을 가져온 다음 models.py
에서 두 개의 클래스를 가져와 등록하여 관리자가 대시보드에서 제품 및 주문에 대한 CRUD 작업을 수행할 수 있습니다.
모델을 등록한 후 대시보드는 다음과 같아야 합니다.
제품 추가:
관리 대시보드에서 주문하기:
쉬운 라우팅
모든 사이트에는 최종 사용자에 대한 특정 정보가 포함된 특정 페이지로 연결되는 경로 또는 URL이 필요합니다. 유사한 정보 또는 응용 프로그램의 모음은 특정 경로에서 액세스됩니다. 파일 내에서 액세스 가능성 및 통신을 위해 경로를 함께 그룹화할 필요가 있습니다. Django는 urls.py
파일에서 이를 수행합니다.
urls.py
는 settings.py
의 ROOT_CONF
변수에서 시작되는 파일입니다. 여기에서 기본 URL 구성이 완료됩니다. 다른 파일이나 폴더, 심지어 urls.py
파일에 뷰를 생성할 때 urlpatterns
목록에서 구성해야 합니다.
Django는 파일에 urlpatterns
라는 목록이 있어야 합니다. ROOT_CONF
변수의 파일을 urlpatterns
목록에 배치한 다른 파일로 변경할 수 있습니다.
urlpatterns = [ path('admin/', admin.site.urls), ]
목록은 path
또는 re-path
의 인스턴스인 객체로 구성됩니다. 각 인스턴스에는 2개의 필수 매개변수인 'admin/'
패턴과 보기 또는 URL 파일인 admin.site.urls
가 있습니다.
인스턴스는 URL 구성이 더 많은 다른 파일로 이어질 수도 있습니다. 이것은 가독성을 위해 수행됩니다.
views.py
백엔드 애플리케이션에 대한 중요한 요구 사항은 각 경로가 매핑되는 보기입니다. Django에서는 views.py
파일에 앱에 대한 함수 또는 클래스 기반 보기를 작성합니다. 보기는 요청을 처리하고 사용자에게 응답을 다시 보내는 클래스 또는 함수입니다.
다음과 같이 views.py
파일을 편집하십시오.
from django.http import HttpResponse def home(request): return HttpResponse("This is a shopping site for products") def order(request): return HttpResponse("Hello, welcome to our store, browse to our products and order!")
여기에서 호출될 때 문장을 반환하는 두 개의 보기(함수 보기)를 정의하는 데 사용하기 위해 HTTPResponse
를 가져왔습니다. def home
은 기본 주소를 방문할 때 호출되어야 하고 def order
는 주문 URL에 액세스할 때 호출되어야 합니다.
뷰를 생성한 후 다른 경로(또는 urlpatterns
)에 할당해야 합니다. 이는 여러 가지 방법으로 수행할 수 있습니다. 동일한 파일에 urlpatterns
목록을 생성하거나 trading.views
를 ecommerce_site.urls
파일로 가져와 경로를 생성할 수 있습니다.
그렇게 하는 데 선호되는 방법은 하위 URL 구성 파일( trading
내부)을 만들고 ecommerce_site.urls
에 포함하는 것입니다. trading
디렉토리에 urls.py
파일을 만듭니다. 디렉토리는 다음과 같아야 합니다.
trading/ __init__.py admin.py apps.py migrations/ __init__.py 0001_initial.py models.py tests.py urls.py views.py
새 파일( urls.py
)에 다음 코드를 추가합니다.
from django.urls import path from . import views urlpatterns = [ path('', views.home, name='home'), path('order/', views.order, name='order'), ]
프로젝트 URL 설정 파일에 trading
URL 설정 파일( urls.py
)을 등록해 보겠습니다.
from django.contrib import admin from django.urls import include, path urlpatterns = [ path('admin/', admin.site.urls), path('', include('trading.urls')) ]
urlpatterns
에 액세스할 수 있도록 2행에서 django.urls
의 include
클래스를 사용할 것입니다. 그런 다음 패턴을 선택하고 거래 디렉토리에 urls.py
파일을 첨부합니다.
여기서 우리가 한 것은 django에서 path
클래스와 views.py
파일을 가져오는 것이었습니다. 그런 다음 목록은 각 보기에 대한 두 개의 경로 인스턴스로 구성됩니다. 따라서 def home
은 https://127.0.0.1:8000/에서 호출됩니다.
그리고 def order
는 https://127.0.0.1:8000/order/에서 호출됩니다.
참고: startproject
및 startapp
실행 프로세스는 필수는 아니지만 Django에서 적극 권장합니다. 그리고 각 명령을 실행한 후 작업의 편의에 따라 파일과 폴더를 생성/이동할 수 있습니다.
종속성 트리
다음은 Django가 들어오는 URL의 요청을 처리하는 프로세스입니다.
- Django는
ROOT_CONF
변수에서 URL의 루트 위치(경로)를 검색합니다. - Django는 제공된 경로에 제공된 Python 파일을 로드합니다. 그리고
urlpatterns
변수를 찾습니다. 이것은django.urls.path()
및/또는django.urls.re_path()
의 모든 인스턴스를 포함하는 목록입니다. - 목록에서 Django는 순서대로 이동하여 일치하는 URL을 찾습니다.
- Python은 보기를 가져오고 호출합니다(함수 기반 또는 클래스 기반 보기). HTTP 요청과 함께 추가로 전달됩니다.
- 보기는 전달된 요청 및 정보를 처리하고 메시지/템플릿을 반환하거나 다른 보기로 리디렉션합니다.
- URL 패턴이 일치하지 않거나 이 프로세스의 특정 지점에서 예외가 발생하면 Django는 적절한 오류 처리 보기를 호출합니다.
결론
우리는 명령줄 없이 Django용 파일을 생성할 수 있다는 가능성을 배웠습니다. 또한 우리는 Django 프로젝트의 장점과 빌딩 블록을 배웠습니다. Django는 단순함을 목표로 백엔드 프로젝트를 구축하는 놀라운 도구입니다.
GitHub에서 이 자습서의 코드를 확인할 수 있습니다.
자원
- Django의 비밀번호 관리
- Django: 시작하기
- 장고: 설정
- O'Reilly의 경량 Django