학습 내용 요약
render와 redirectget과 filter
1) render
render(request, template_name, context=None, content_type=None, status=None, using=None)
render는 위와 같은 파라미터를 가진다. 이때 request와 template_name은 필수로 적는데, template_name은 불러올 html 파일을 적는다. 여기서 context로 views.py에서 사용하던 파이썬 변수를 html 파일로 넘길 수 있다. 딕셔너리 형태로 사용하며, key값이 html에서 쓸 변수명, value값이 파이썬 변수가 된다.
2) redirect
redirect(to, permanent=False, *args, **kwargs)
redirect는 to가 필수인데, 이동할 url을 작성한다. 상대 url, 절대 url 모두 가능하며, urls.py에 정의한 name을 적기도 한다. 실행되면 해당 url에 맞는 기능이 views.py에서 실행되는 흐름이다.
3) 차이
쉽게 보면, render는 template을 불러오는 것에 쓰이고, redirect는 해당 경로로 이동시키는 즉, 사용자를 특정 경로로 옮기는 것이다. 그래서 render를 하면 주소창의 url이 해당 template의 url로 바뀌지 않는다.