개발/Django 5

[Django] reverse와 reverse_lazy 함수

reverse와 reverse_lazy reverse 함수 호출 즉시 장고 URLConfig를 읽어서 URL을 찾는다. 따라서 장고 URLConfig가 로드된 이후 호출되어야 한다. ex) 함수 뷰에서 reverse를 사용한다. 뷰에서 함수는 클라이언트 요청이 있을 때 호출된다. 해당 시점은 URLConfig가 로드된 이후의 시점이므로 reverse를 사용한다. reverse_lazy 장고 URLConfig가 로드된 이후에 URL을 찾겠다고 미룬다. 장고 URLConfig가 로드되기 전에 호출되어야 하는 경우 사용한다. ex) 클래스 뷰에서는 reverse_lazy를 사용한다. 서버를 실행하면서 class가 로드되어 정의될 때는 URLConfig가 로드되기 전이다. 따라서 URLConfig가 로드되기 전..

개발/Django 2024.04.20

[Django] MTV 디자인 패턴

MTV(Model - Template - View)장고 프레임워크에서 사용하는 디자인 패턴으로, 프로젝트를 데이터 처리(Model)와 UI처리(Template), 인터페이스 처리(View) 세 부분으로 나누어 개발하는 방법이다. 스프링 프레임워크에서의 MVC(Model - View - Controller)와 1대1 대응한다는 면에서 발음상 MVT라고 부르기도 하지만 여기서 View의 의미는 MVC에서 UI 처리를 맡는 View가 아닌 인터페이스 처리를 하는 Controller의 역할을 하므로 MTV패턴이라고 한다. URL conf URL과 호출할 View의 매핑 정보를 가지고 View를 호출하는 역할을 한다.View정의된 Model(데이터)와 Template(뷰)를 적절히 호출하여 결과물을 생성하고 호출..

개발/Django 2024.03.18

[Django] 장고 프로젝트 시작하기 3편

데이터베이스 생성 및 마이그레이션 + 관리자 페이지(admin) 1. 데이터베이스 생성 및 마이그레이션 - 이전 포스팅에서, 서버를 실행했을 때 아래 이미지처럼 SQLite DB가 기본경로에 생성되었을 것이다. (db.sqlite3) - DB가 없을 경우 서버를 실행하면 기본적으로 SQLite DB가 생성된다. 아래와 같은 에러가 발생하는 이유는 DB가 생성되었지만 관리자 페이지(admin)에서 사용할 데이터베이스가 없기 때문에 마이그레이션을 진행하라는 의미이다. You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contentty..

개발/Django 2024.03.11

[Django] 장고 프로젝트 시작하기 2편

장고 프로젝트 생성 및 서버 실행 1. 장고 프로젝트 생성 - 아래의 명령을 수행하여 프로젝트를 생성한다. 여기서 config는 생성할 프로젝트 폴더명, .(현재 디렉터리) 는 config를 생성할 위치를 나타낸다. django-admin startproject config . - config 디렉터리 및 manage.py가 생성된다. 2. 서버 실행 - 생성한 기본 프로젝트를 실행하기 위해서 아래 명령을 사용한다. python manage.py runserver #기본 포트는 8000 - 서버가 정상 실행되면 127.0.0.1:8000을 통해 브라우저에서 아래 페이지를 확인할 수 있다. - 참고로 포트를 변경하여 실행하고 싶을 경우 아래와 같이 실행한다. python manage.py runserver..

개발/Django 2024.03.04

[Django] 장고 프로젝트 시작하기 1편

개발 환경 세팅 및 장고 패키지 설치 개발 환경(OS) : Windows11 사용한 개발 툴 : Visual Studio Code (VSCode) 1. 프로젝트 폴더 생성 - 프로젝트의 루트 폴더를 생성합니다. 저는 django_proj로 생성하였습니다. 2. 확장 프로그램 설치 - 장고(Django), 파이썬(Python) 확장 프로그램을 마켓플레이스에서 검색 후 설치합니다. 3. 파이썬 가상환경 세팅 - 아래 명령을 통해 파이썬에서 제공하는 가상환경을 구성합니다. - python -m venv {생성할 가상환경 루트 디렉터리} - 코드 실행 및 패키지 설치 등을 가상환경에서만 수행하여 다른 프로젝트와 독립된 환경을 구성할 수 있다. python -m venv venv_proj 4. 가상환경 활성화 -..

개발/Django 2024.02.27