본문 바로가기

Web

Django app에서 request 객체


Django app을 만들면 기본적으로 views.py가 생긴다.


이 파일에서는 화면에 정보를 표시하기위한 기능을 하는 함수들로 채우면 되는데, 보통 인자로 request 객체를 가진다.



from django.Http import HttpResponse


def mainview(request):

   output = '''test'''

   return HttpResponse(output) 


예를들어, 이렇게 request 객체를 인자로 가지는 mainview라는 함수를 만들었다.


여기서 request 객체는 사용자의 폼 입력같은 행동에 의해 입력된 값 또는 그런 정보들을 가진다.


request.GET, request.POST, request.COOKIE는 사전형의 데이터로 get, post, cookie 정보를 담고 있다.


한가지 예로, 아래와 같은 html에 폼을 구성했다면, 



<html>

    <head>

        <title> Search </title>

    </head>

    <body>

        <form action="/search/"  method="get" >

        <input type="text" name = "q">

        <input type="submit"value="Search"/>

        </form>

    </body>

</html> 


입력된 정보를 얻어오는 방법은 아래와 같이 될 수 있겠다.


def find(request):

if request.GET.get('q'):

     message = 'You submitted: %r' % request.GET['q']

else:

     message = 'You submitted nothing!'


return HttpResponse(message)