| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Tags
- 병합
- 장고
- 템플릿언어
- 가상환경만들기
- 동빈나
- templates
- app
- salesforce
- 알고리즘
- 퀵
- 배포
- 뷰
- 가상환경
- 템플릿
- sfdc
- Formula
- sort 함수
- Mtv
- model
- date
- 앱
- view
- 퀵정렬
- django
- MTV패턴
- 정렬
- 병합정렬
- testclass
- Sort
- sort()
Archives
- Today
- Total
Like A Flowing Cloud
render? redirect? / 효율적 url 관리 / http상에서 정보 주고 받는 방식 본문
■ render? redirect?
- render = 템플릿을 불러온다.
- redirect = URL 로 이동한다.
( URL로 이동한다는 건 그 URL 에 맞는 views가 다시 실행될테고
여기서 render를 할지 다시 redirect 할지 결정할 것. )
● render
render() 함수는 request 객체를 첫번째 인수로 받고,
템플릿 이름을 두번째 인수로 받으며,
context 사전형 객체를 세번째 선택적 인수로 받는다.
render(request, template_name, context=None, content_type=None, status=None, using=None)
이 중 request, template_name 은 필수적으로 필요하다.
# views.py
from django.shortcuts import render
def my_view(request):
name = "minsung"
return render(request, 'myapp/index.html', {
'name': name,
}
● redirect
redirect는 URL로 이동한다.
redirect(to, permanent=False, *args, **kwargs)
to 에는 어느 URL 로 이동할지를 정하게 된다.
이 때 상대 URL, 절대 URL 모두 가능하며 urls.py 에 name 을 정의하고 이를 많이 사용한다.
단지 URL로 이동하는 것이기 때문에 render 처럼 context 값을 넘기지는 못한다.
# views.py
from django.shortcuts import redirect
def my_view(request):
...
return redirect('view-name') # view_name 사용
# return redirect('/some/url/') # 상대 경로
# return redirect('https://example.com/')# 절대 경로
■ url을 효율적으로 관리
# blog/urls.py
from . import views
urlpatterns = [
path('new/', views.new, name='new'),
]
# project/urls.py
from django.urls import path, include
urlpatterns = [
path('blog/', include('blog.urls')),
]
■ http 상에서 정보를 주고 받는 방식
method를 따로 지정하지 않고 form으로 넘겨주면 GET 방식으로 넘어온다.
url로 정보가 드러나지 않는 방식 = POST 방식
- 데이터 조회 : GET
- 데이터 생성 : POST
- 데이터 수정 : PUT
- 데이터 삭제 : DELETE
'Django' 카테고리의 다른 글
| 깃협업 & django 프로젝트 만들기 및 시작하기 (0) | 2021.06.24 |
|---|---|
| 글쓰기 기능 구현하기 - create (0) | 2021.06.14 |
| 템플릿 상속, url 관리하기 (0) | 2021.06.14 |
| pk, path converter, get_object_or_404, 글자수 제한, 링크달기 (0) | 2021.06.14 |
| queryset & method (0) | 2021.06.14 |