땅지원
땅지원's Personal blog
땅지원
전체 방문자
오늘
어제
  • 전체 (353)
    • Frontend (2)
      • React (2)
    • Backend (90)
      • Java (16)
      • Python (19)
      • Spring (23)
      • Database (21)
      • Troubleshooting (8)
    • DevOps (27)
      • ELK (13)
    • CS (40)
    • OS (2)
      • Linux (2)
    • Algorithm (95)
      • concept (18)
      • Algorithm Problem (77)
    • 인공지능 (25)
      • 인공지능 (12)
      • 연구노트 (13)
    • 수업정리 (35)
      • 임베디드 시스템 (10)
      • 데이터통신 (17)
      • Linux (8)
    • 한국정보통신학회 (5)
      • 학술대회 (4)
      • 논문지 (1)
    • 수상기록 (8)
      • 수상기록 (6)
      • 특허 (2)
    • 삼성 청년 SW 아카데미 (6)
    • 42seoul (12)
    • Toy project (3)
    • 땅's 낙서장 (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 20.11.6 BB21플러스 온라인 학술대회
  • 20.10.30 한국정보통신학회 온라인 학술대회

인기 글

태그

  • ㅗ
  • 이것이 리눅스다 with Rocky Linux9
  • I
  • E
  • D

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
땅지원

땅지원's Personal blog

Django에 대한 기초 지식
Backend/Python

Django에 대한 기초 지식

2022. 7. 5. 20:47

● app 추가시 setting.py에서 꼭 app 추가해야함

 

● HttpResponse vs render vs redirect

httpresponse : Json, html을 return

render : 템플릿을 불러오고

redirect : URL로 이동

● render

render(request, template_name, context=None, content_type=None, status=None, using=None)
# views.py

from django.shortcuts import render

def my_view(request):
    name = "minsung"
    return render(request, 'myapp/index.html', {
        'name': name,
    }

context 로 원하는 인자를, 즉 view 에서 사용하던 파이썬 변수를 html 템플릿으로 넘길 수 있다.

context 는 dict()으로 사용하며 key 값이 탬플릿에서 사용할 변수이름, value 값이 파이썬 변수가 됨

● redict

redirect(to, permanent=False, *args, **kwargs)
# 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/')# 절대 경로 

to 에는 어느 URL 로 이동할지를 정하게 된다.

이 때 상대 URL, 절대 URL 모두 가능하며 urls.py 에 name 을 정의하고 이를 많이 사용.

단지 URL로 이동하는 것이기 때문에 render 처럼 context 값을 넘기지는 못한다.

● Template engine

 

● request.method == 'POST' 

 

 

 

● static 수정이 안될 때

chrome 쿠키, 캐시 데이터 삭제 후 진행

 

 

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'myapp','static')
]

전체 프로젝트 아래에 static으로 관리하는게 아니라 myapp-static으로 관리하겠다는 의미임

 

 

'Backend > Python' 카테고리의 다른 글

Web Framework Django 추가로 해야 할 것  (0) 2022.07.05
Web Framework Django 시작하기(5) - CRUD의 Create  (0) 2022.01.11
Web Framework Django 시작하기(4) - CRUD의 Read  (0) 2022.01.11
Web Framework Django 시작하기(3) - Django에 대해  (0) 2022.01.10
Web Framework Django 시작하기(2) - Routing URLConf ★  (0) 2022.01.10
    'Backend/Python' 카테고리의 다른 글
    • Web Framework Django 추가로 해야 할 것
    • Web Framework Django 시작하기(5) - CRUD의 Create
    • Web Framework Django 시작하기(4) - CRUD의 Read
    • Web Framework Django 시작하기(3) - Django에 대해
    땅지원
    땅지원
    신입 개발자의 우당탕탕 기술 블로그

    티스토리툴바