본문 바로가기

dev/Django

[Django]HttpResponse / render

HttpResponse

# 프로젝트 내에서의 url매핑
# views.py에서 화면의 응답을 돌려주는 메소드를 작성함
def index(request): # import에 request를 따로 적어주지 않는다
    return HttpResponse("hello django")
            #추후 render로 사용하게 된다.

 

Render

from django.http import HttpResponse
    #응답을 위해 필요. 추후에는 render가 간결해 render를 주로 사용하게 된다.
    # 클라이언트로부터 요청을 받으면(request),
    # 그 요청을 urls에서 확인 후
    # views에서 처리하는 과정(respons)
def index(request):
    template = loader.get_template('fi/index.html')
                # template을 로딩해서 index.html의 데이터를 가져온다
                # loader를 통해 template파일을 가져온다(get)
    now = datetime.now() # 현재시간 출력
    con = {
        'present_date':now
    }
    return HttpResponse(template.render(con, request))
            # HttpResponse로 템플릿파일을 가져와 내보냄
            # render: 제공하다. 클라이언트의 요청사항에 따라 응답을 준다.
                      # html을 활용해 response를 생성하는 메소드
            # con: 딕셔너리 객체

: 로딩하는 부분이 필요함

 

#render 이용하는 방법
from django.shortcuts import render

def index(request):
    now = datetime.now() #현재시간
    con = {
        'present_date':now #현재시간 now를 전달
    } #딕셔너리 형태로 값을 가져올 수 있다.
    return render(request, 'fi/index.html', con)
                # 첫 번째 인수: request
                # 두 번째 인수: template파일
                # 세 번째 인수: 사전형(dictionary) 객체

: 로딩하는 부분이 필요없어 많이 사용한다.

 

 

 

 

 

 

 

'dev > Django' 카테고리의 다른 글

[Django]admin.py  (0) 2022.02.08
[Django]Model Form  (0) 2022.02.06
[Django]Forms.py (+ CSRF 설명)  (0) 2022.02.06
[Django]모델  (0) 2022.02.06
[Djanggo]실행 순서 정리  (0) 2022.02.05