@@장고에서 view를 보여주는 방법에대한 정리 //잘못된정보 피드백 환영
장고 config - urls.py
url = 'admin'/ , view = admin.site.urls 를 의미한다.
장고에서 view란 ?
1. url 요청에 바로 응답하는방법 !
2. view는 function 이다 !
3. view는 HttpResponse를 생성한다 //그럼 응답해줘야겠지?
-장고에서는 Request를 제공하나 Response는 제공하지않는다.
-장고는 받은 Request를 Python object로 변환시켜준다 , 그리고 인자로 제공
또한 장고 어플리케이션들은 기본으로 urls.py가 없으므로 만들어줘야됨!
views.py에서 보듯이 request를 첫번째 인자로 받고 , HttpResponse를 반환한다. (현재 hi를 썻기떄문에 hi가 표시됨)
장고 template
실제로 사용할때는 장고 template를 사용한다.
//template는 그냥 간단히 html이라고 생각하면됨 차이점은 파이썬이 컴파일해준다 정도?
views.py를 수정후
templates 디렉토리 생성후 그안에 all_rooms.html을 만들어주고 , hi를 적어준다
이제 장고에게 templates의 위치를 알려주자
html 파일 생성후 config - setting.py 에 TEMPLATES 부분에서 저렇게 작성해주자 , templates는 디렉토리 이름임 그리고 새로고침하면 html이 적용된걸 볼수있다 !
Template Context
template에서 장점? 특징? 은 context이다 , context는 template에 변수를 보낼수있다 .
views.py 수정후 template에 변수들을 적용시켜보자 !
all_rooms.html 에서
<h4>현재시간:{{now}}</h4>
<h5>배고프다 {{hungry}}</h5>
변수가 잘적용된다!
두번째 특징은 template에 직접 python 로직을 작성할 수 있다는건데
이런식으로 {% %} 를사용한다! 이경우 hungry 변수를 Ture 로 해놓았기때문에 배고프다가 출력된다 !
결론 == 변수만 사용하고싶다면 {{ }} , 로직을 사용하려면 {% %}
'Python > Django' 카테고리의 다른 글
[Django] Class Based Views (0) | 2020.06.20 |
---|---|
[Django] Paginator (0) | 2020.06.19 |
[Django] 생각정리 (0) | 2020.06.13 |
[Django] django.db.utils.IntegrityError: (1215, 'Cannot add foreign key constraint') 에러 @@임시 (0) | 2020.06.06 |
[Django] CSRF (Cross Site Request Forgery) Error (0) | 2020.05.31 |