(Django 기초) HTTP GET, POST

Posted by : at

Category : Django



  • GET : 조회, url/?value 형태
  • POST : 업로드, POST + BODY 형태

POST 보내보기

<!-- hello_world.html -->

{% extends 'base.html' %}

{% block content %}

    <div style="height: 20rem; background-color:#38df81; border-radius: 1rem; margin: 2rem;">
        <h1>
            Test
        </h1>

        <form action="/account/hello_world/" method="post">
            <!-- django로 http protocol을 쓰려면 아래구문을 추가해줘야한다 보안에 관련된 사항이라 받아 들이자. -->
            {% csrf_token %}
            <!-- 버튼을 만들고 /account/hello_world/로 post보내달라 -->
            <input type="submit" class="btn btn-primary" value="POST">
        </form>
    </div>

{% endblock %}


POST에 대한 반응도 구현해보자

# views.py

from django.http import HttpResponse
from django.shortcuts import render

# Create your views here.

def hello_world(request):
    if request.method == "POST":
        return render(request, 'accountapp/hello_world.html', context={'text': 'POST METHOD!!!'})
    else:
        return render(request, 'accountapp/hello_world.html', context={'text': 'GET METHOD!!!'})
<!-- hello_world.html -->

{% extends 'base.html' %}

{% block content %}

    <div style="height: 20rem; background-color:#38df81; border-radius: 1rem; margin: 2rem;">
        <h1>
            Test
        </h1>

        <form action="/account/hello_world/" method="post">
            {% csrf_token %}
            <input type="submit" class="btn btn-primary" value="POST">
        </form>

        <h1>
            {{ text }}
        </h1>
    </div>

{% endblock %}


About Taehyung Kim

안녕하세요? 8년차 현업 C++ 개발자 김태형이라고 합니다. 😁 C/C++을 사랑하며 다양한 사람과의 협업을 즐깁니다. ☕ 꾸준한 자기개발을 미덕이라 생각하며 노력중이며, 제가 얻은 지식을 홈페이지에 정리 중입니다. 좀 더 상세한 제 이력서 혹은 Private 프로젝트 접근 권한을 원하신다면 메일주세요. 😎

Star
Useful Links