정의

Django는 파이썬으로 만들어진 무료 오픈소스 웹 애플리케이션 프레임워크입니다.

 

어떤일을 할까?

웹서버에 요청이 오면 장고로 전달됩니다.

장고 urlresolver는 웹페이지 주소를 보고 무엇을 할지 확인합니다.

view에 어떤 할일을 할지 찾아서 실행시킵니다. 

view는 할일을 다하고 답장을 생성하여 장고는 그 답장을 그 사용자의 웹 브라우저에 보내주는 역할을 합니다.

 

모델

장고에 모델을 저장하면 그 내용이 데이터베이스(DB)에 저장됩니다.

예를 들어 블로그 글 모델을 생각해볼게요

//blog/models.py
from django.conf import settings
from django.db import models
from django.utils import timezone


class Post(models.Model):
    author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    title = models.CharField(max_length=200)
    text = models.TextField()
    created_date = models.DateTimeField(
            default=timezone.now)
    published_date = models.DateTimeField(
            blank=True, null=True)

    def publish(self):
        self.published_date = timezone.now()
        self.save()

    def __str__(self):
        return self.title

이렇게 Post 모델을 만들어 줄 수 있습니다.

 

그 이후로는

python manage.py makemigrateions blog

python manage.py migrate blog

로 글 모델이 데이터베이스에 migration을 해줍니다.

 

URL 설정

전체 폴더의 urls.py에 들어가서

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('blog.urls')),
]

이렇게 코드를 바꿔주면, ''(아무것도 없음)이 url에 들어오면, blog.urls를 찾는다는 뜻입니다

from django.urls import path
from . import views

urlpatterns = [
    path('', views.post_list, name='post_list'),
]

그리고 blog/urls.py에 이렇게 추가해주면, ''가 들어오면 views의 post_list를 사용한다는 뜻입니다.

 

참고 : 

https://tutorial.djangogirls.org/ko/

 

들어가며 · HonKit

1차 : 2015. 10. 1. 이수진, 함기훈, 박제권, 조혜선, 정광윤, 임정훈, 문지영, 김휘경, 송석리, 여형석, 심혜민

tutorial.djangogirls.org

 

+ Recent posts