본문 바로가기
Django

django) GET, POST 실습

by 빈스터디 2023. 2. 21.

1. main.html을 통해서 GET, POST의 기능을 수행하고, 각각의 html 페이지를 보여준다.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
  main입니다~~~~~~~~~~~

<a href="/send_get/?num1=10&num2=20">클릭하면 이동하는 태그</a>
<form action="/send_post/" method="post">
    {% csrf_token %}
    <input type="test" name="num1">
    <input type="test" name="num2">
    <button type="submit">전송하기</button>

</form>
</body>
</html>

 

 

2. send_get.html, send_post.html 을 생성한다.

 

 

3.  views.py에 get, post 기능과 html을 매핑하는 코드를 작성한다.

def send_get(request):
    num1 = request.GET.get('num1', None)
    num2 = request.GET.get('num2', None)

    num1 = int(num1)
    num2 = int(num2)
    result = num1 + num2

    context = {"result": result}

    return render(request, 'send_get.html',context) #html 페이지 안에 context 담겨서 가게 된다.

def send_post(request):
    num1 = request.POST.get('num1', None)
    num2 = request.POST.get('num2', None)

    num1 = int(num1)
    num2 = int(num2)
    result = num1 + num2

    context = {"result": result}

    return render(request, 'send_post.html',context) 

 

 

4.  urls.pyview에서 작성한 함수를 url과 연결한다.

 

 

5. main 페이지

 

 

6. send_get 페이지(GET)

 

 

7. send_post 페이지(POST)