디자인 패턴
: 소프트웨어 설계에서 발생하는 문제를 해결하기 위한 일반적인 해결책
MVC 디자인 패턴(Model, View, Controller)
:애플리케이션을 구조화하는 대표적인 패턴(데이터, 사용자 인터페이스, 비즈니스 로직을 분리)
- 독립적이고 유지보수하기 쉬움
MTV 디자인 패턴(Model, Template, View)
: Django에서 애플리케이션을 구조화하는 패턴(MVC와 이름만 다른 개념)
Django MTV 구조
프로젝트 구조
setting.py
: 프로젝트의 모든 설정을 관리url.py
: URL과 이에 해당하는 적정한 views를 연결__init__.py
: 해당 폴더를 패키지로 인식하도록 설정manage.py
: Django 프로젝트와 다양한 방법으로 상호작용하는 커맨드라인 유틸리티
앱 구조
admin.py
: 관리자용 페이지 설정models.py
: DB와 관련된 Model을 정의views.py
: HTTP 요청을 처리하고 해당 요적에 따른 응답을 반환
Project에서 마저 해보기
1. testpjt/urls.py
의 경로로 들어가서 urlpatterns 확인서버를 들어가서 주소 뒤에 /admin을 입력하면 다음과 같은 화면을 확인할 수 있음
urlpatterns = [ path('admin/', admin.site.urls), ]
2. urls.py
에 이전에 추가해둔 articles앱 추가하기
from django.contrib import admin
from django.urls import path
from articles import views # 추가
urlpatterns = [
path('admin/', admin.site.urls),
path('articles/', views.index), # 추가
]
다음과 같이 추가를 하면 서버주소/articles/ 로 요청을 할 때, views 모듈의 index 뷰 함수를 호출하게 된다.
3. articles/views.py
의 경로로 들어가 view파일에 index함수를 정의해주기
from django.shortcuts import render
# Create your views here.
def index(request):
return render(request, './articles/index.html')
함수의 인자로 들어가는 request는 고정
4. articles 폴더 안에 templates 폴더를 생성해주고, 그 폴더안에 articles 폴더를 생성, 이후 aritcle 폴더 안에 index.html을 만들어 준다.
Testproject/articles/templates/articles/index.html
의 경로를 가지도록 만들어주기
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<h1>hello</h1>
</body>
</html>
!+엔터
로 html서식을 자동완성 후, h1>hello를 써준다.
5. 수정한 파일들을 모두 저장 후, 서버를 열어서 주소/articles로 확인할 수 있다.
'BackEnd > Django' 카테고리의 다른 글
[Django] Template 상속 (0) | 2023.09.13 |
---|---|
[Django] Template System (0) | 2023.09.13 |
[Django] Django 프로젝트 만들기 (0) | 2023.09.12 |
[Django] 가상환경 만들기 (0) | 2023.09.12 |
[Django] 사전 지식 (0) | 2023.09.12 |
댓글