작정하고 장고(14~16)

진단·2022년 10월 3일

작장고

목록 보기
3/7

Model

원하는 앱의 model.py에서 만들고 싶은 model class를 생성 후
db연결
-> python manage.py makemigrations
-> python manage.py migrate





HTTP protocol

1. GET

: 조회를 위해 요청을 보낼 때
주소에 파라미터를 넣어서 보냄
-> 서버에서 파라미터를 이용해 추가적인 작업을 함

2. POST

: 새로운 정보를 만들거나 수정할 때
body에 데이터를 넣어서 보냄(주소 X)

html form을 통한 post 요청

hello_world.html

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

action: 요청을 보내는 주소
method: 요청을 보내는 방식(post, get...)
{% csrf_token %}: post요청을 보낼 때 반드시 필요
input: 버튼 태크
type: 말그대로 input의 타입
class: bootstrap 사용 예
value: 버튼에 들어갈 text



view 함수에서 get, post 사용

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

request.method == "POST": 요청을 받은 객체 안의 method가 post일 경우
context: render 방식에서 추가로 데이터를 보낼 때 -> text이름을 가진 POST METHOD!! 내용을 데이터로 가짐
else: get 요청을 받았을 때

html에서 사용

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

context에 담긴 데이터를 html에서 위와 같이 사용


: get 요청을 받았을 때 결과


: post 요청을 받았을 때 결과

0개의 댓글