WEB/Django prac

[Django prac][HTML 12] 사용자 입력 데이터를 받아, 그대로 출력하는 서버 만들기 5

bay07 2024. 3. 14. 13:53

Catch 로직 수정하기 

1. views.py 현재 상태 

 

2. views.py 수정하기

request로 정보를 받는다. 

그리고 그 정보를 message에 저장한다. 

그런데 정보를 전달할 때는 dictionary 형태로 전해야한다. 

그렇기 때문에 중간에 context를 넣어서 바꿔준 것. 

마지막에 'articles/catch.html'로 이 정보를 전달하면 그 html 페이지에서 {{ message }} 로 출력이 된다. 

'message' : message ,

여기서 (콤마) 잘쓰기 

더보기
# 여기 주석 풀어주기
# foods 중에 랜덤으로 뽑아서 출력하려고
import random
from django.shortcuts import render


def index(request):
    context = {
        'name' : 'stella',
    }
    return render(request, 'articles/index.html', context)

def dinner(request):
    foods = [
        '사과',
        '딸기',
        '바나나',
        '감',
    ]
    picked = random.choice(foods)
    context = {
        'foods':foods,
        'picked':picked,
    }
    return render(request, 'articles/dinner.html', context)

def search(request):
    return render(request, 'articles/search.html')

def throw(request):
    return render(request, 'articles/throw.html')


def catch(request):
    
    message = request.GET.get('message')

    context = {
        'message' : message,
    }
    return render(request, 'articles/catch.html',context)