2021. 4. 11. 01:15ㆍIssue & Solution
Django와 python에 익숙하지 않아서, 또 HTML 관련해서 헷갈렸던 부분들 정리
url : template에서 url "polls:vote" question.id의 의미
=> polls의 vote url이 아니다! name이 vote라는 url에 parameter에 변수를 넣는 것임. 즉, name = "vote"이고, url = "<int:question_id>/vote"라면 <int:question_id>에 question.id 값을 넣는다는 뜻임
view.py에서
return HttpResponseRedirect(reverse("polls:results", args=(question.id)))
이 요청은 해당 view의 함수가 끝나고, name = results의 변수에 question.id 값을 넣은 url로 리턴한다는 뜻이다.
그러나 이대로 하면 에러난다.
왜냐하면 args는 list타입이어야 한다. 즉 args = (question.id,), 처럼 뒤에 ,를 붙여주던가, 아니면 args = [question.id] 로 써야 한다.
args = (question.id,)
---or---
args = [question.id]
form method = "post"
form의 action은 해당 url로 지정한 스크립트를 보내고, input값이 있다면 input의 name과 value를 받아서 전송하는데, HTTP Method를 form의 method에 의해서 요청할 수 있다. method = "post"라면 view에서는 value = request.POST[name]가 될 것이다. 이 때 주의할 점은 request.POST의 값은 항상 문자열이기 때문에, integer값이 필요하다면, int형으로 형변환을 해줘야 할 것이다.
'Issue & Solution' 카테고리의 다른 글
JavaScript : 외부 변수(Array 등) Promise로 처리하기 (0) | 2021.04.14 |
---|---|
Node.JS : Naver API Papago 번역 인증 오류? (0) | 2021.04.13 |
Raspbian(라즈비안) WiringPi Issue 정리 (0) | 2021.03.29 |
Linux Vi 작성 시 화살표, 백스페이스 등이 이상할 때 (0) | 2021.03.27 |
Rasbian(라즈비안) Win32 Disk Imager 각종 오류 (0) | 2021.03.26 |