Django를 데이터베이스 없이 쓸수 있더라도 데이터베이스 레이아웃을 파이썬 코드로 표현할 수 있는
object-relational mapper 가 같이 딸려옴
데이터베이스를 자동으로 생성해주는 Django command-line 유틸리티
$ python manage.py makemigratilns
$ python manage.py migrate
makemigration 명령은 생성 가능한 모델을 찾아 테이블이 존재하지 않으면 마이그레이션을 생성
migrate 명령은 마이그레이션을 실행하고 사용자의 데이터베이스에 테이블을 생성 ,
//데이터베이스 스키마, 관계형 데이터베이스에서 데이터가 구조화되는 방식을 정의
여기에는 필드, 데이터유형, 그이고 이러한 엔티티(개체)간의 관계등 논리적 제약조건이 포함
스키마는 시각적 표현을 사용하여 데이터베이스의 아키텍처를 전달, 조직의 데이터관리 규율의
기반//
## 주의 사항
프로젝트를 생성할 때, 파이썬 또는 장고에서 사용중인 이름은 피해야함
test, login 같은 이름들
# 장고 디렉토리 내의 파일들 from 공식문서
- file:mysite/ 디렉토리 밖은 프로젝트를 담는 공간입니다. 그 이름은 Django 와 아무 상관이 없으니, 원하는 이름으로 변경해도 됩니다.
- manage.py: Django 프로젝트와 다양한 방법으로 상호작용 하는 커맨드라인의 유틸리티 입니다. manage.py 에 대한 자세한 정보는 django-admin and manage.py 에서 확인할 수 있습니다.
- mysite/ 디렉토리 내부에는 프로젝트를 위한 실제 Python 패키지들이 저장됩니다. 이 디렉토리 내의 이름을 이용하여, (mysite.urls 와 같은 식으로) 프로젝트의 어디서나 Python 패키지들을 임포트할 수 있습니다.
- mysite/__init__.py: Python으로 하여금 이 디렉토리를 패키지처럼 다루라고 알려주는 용도의 단순한 빈 파일입니다. Python 초심자라면, Python 공식 홈페이지의 패키지를 읽어보세요.
- mysite/settings.py: 현재 Django 프로젝트의 환경 및 구성을 저장합니다. Django settings에서 환경 설정이 어떻게 동작하는지 확인할 수 있습니다.
- mysite/urls.py: 현재 Django project 의 URL 선언을 저장합니다. Django 로 작성된 사이트의 “목차” 라고 할 수 있습니다. URL dispatcher 에서 URL 에 대한 자세한 내용을 읽어보세요.
- mysite/asgi.py: 현재 프로젝트를 서비스하기 위한 ASGI-호환 웹 서버의 진입점입니다. 자세한 내용은 ASGI를 사용하여 배포하는 방법 를 참조하십시오.
- mysite/wsgi.py: 현재 프로젝트를 서비스하기 위한 WSGI 호환 웹 서버의 진입점입니다. WSGI를 사용하여 배포하는 방법를 읽어보세요.
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path("polls/", include("polls.urls")),
path("admin/", admin.site.urls),
]
에서
패스의 인수 route
route 는 URL 패턴을 가진 문자열이다. 요청이 처리될 때, Django는 urlpatterns의 첫번째 패턴부터 시작하여,
일치하는 패턴을 찾을 때까지 요청괸 URL을 각 패턴과 리스트의 순서대로 비교한다.
패턴들은 GET 이나 POST의 매개 변수들, 혹은 도메인 이름을 검색하지 않는다.
예를 들어, https://www.example.com/myapp/ 이 요청된 경우, URLconf 는 오직 myapp/ 부분만 바라본다.
또한, https://www.example.com/myapp/?page=3 같은 경우에도 역시 myapp/ 만 신경쓴다.
패스의 인수 view
Django에서 일치하는 패턴을 찾으면 HttpRequest 객채를 첫번째 인수로 하고, 경로로부터 캡처된 키워드 값을
키워드 인수로하여 특정한 view 함수를 호출한다.
패스의 인수 name
URL 에 이름을 지으면, 템플릿을 포함한 Django 어디에서나 명확하게 참조할 수 있습니다. 이 강력한 기능을 이용하여, 단 하나의 파일만 수정해도 project 내의 모든 URL 패턴을 바꿀 수 있도록 도와줍니다.
'코딩 > Django' 카테고리의 다른 글
장고 레스트 프레임워크 (0) | 2023.04.19 |
---|---|
장고 프레임워크에 대한 고찰 (1) | 2023.04.17 |
장고 프로젝트 해설, feat 포스트맨 (1) | 2023.04.10 |
장고에서 form 과 model 은 어떻게 다른가 (0) | 2023.04.07 |
장고 2 주차 (0) | 2023.04.04 |