본문 바로가기
  • 살짝 구운 김 유나
Web/Django

Form Data 보내고 가져오기

by yunae 2022. 9. 2.

Sending form data (client)

 

HTML <form> element

- 데이터가 전송되는 방법을 정의

- 사용자로부터 할당된 데이터를 서버로 전송하는 역할을 담당

 

데이터를 어디(action)로 어떤 방식(method)으로 보낼지

 

1. action

- 입력 데이터가 전송될 URL을 지정

- 데이터를 어디로 보낼 것인지 지정하는 것이며 , 반드시 유효한 URL이어야 함

- 이 속성을 지정하지 않으면 데이터는 현재 form이 있는 페이지의 URL로 보내짐

 

2. method

- 데이터를 어떻게 보낼 것인지 정의

- 입력 데이터의 HTTP request methods를 지정

- GET 방식과 POST 방식

 

 

form을 통해 데이터를 제출했을 때 name 속성에 설정된 값을 서버로 전송,

서버는 name 속성에 설정된 값을 통해 사용자가 입력한 데이터 값에 접근할 수 있음

-> 주요 용도는 GET/POST 방식으로 서버에 전달하는 파라미터로 매핑하는 것

-> name :key, value:value

 

 

 

HTTP request methods

: HTTP는 주어진 리소스가 수행 하길 원하는 행동을 나타내는 request methods를 정의

ex) GET, POST, PUT, DELETE

 

GET

: 서버로부터 정보를 조회하는데 사용. 즉, 서버에게 리소스를 요청

- 데이터를 가져올때만 사용!

- 데이터를 서버로 전송할 때 Query String Parameters를 통해 전송 >> 데이터는 URL에 포함되어 서버로 보내짐

 

 

 

Query String Parameters

: 사용자가 입력 데이터를 전달하는 방법 중 하나로, url 주소에 데이터를 파라미터를 통해 넘기는 것

 

이러한 문자열은 &으로 연결된 key=value 쌍으로 구성되며 기본 URL과 물음표로 구분됨

ex) http://host:port/path?key=value&key=value

 

 

 

 

 

Retrieving the data (server)

서버는 클라이언트로 받은 key-value 쌍의 목록과 같은 데이터를 받게 됨

 

throw 페이지의 form이 보낸 데이터는

GET method로 보내지고 있기 때문에 데이터를 서버로 전송할 때 Query String Parameters를 통해 전송

 

즉, 데이터는 URL에 포함되어 서버로 보내짐

그러면 우리가 작성해야 하는 view 함수에서는 해당 데이터에 어떻게 접근 가능할까?

 

" 모든 요청 데이터는 view 함수의 첫번째 인자 requests에 들어있다 "

 

 

throw에서 데이터 넘겨주고 catch에서 받기

views.py

-> request에 담긴 요청데이터를 catch가 사용

 

 

 

 

텐트 치고 놀았던 날, 텐트 안에서 찍은 사진!

이제 사진말고 진짜 풍경 보고싶다. 그럼 돌아와서 진짜 잘할 수 있을 것 같은데,

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

render vs redirect  (0) 2022.09.05
Django Model 2 - QuerySet API  (0) 2022.09.02
Templates Inheritance  (0) 2022.09.01
Django Model 1  (0) 2022.08.31
Django 시작하기  (0) 2022.08.30

댓글