장고에서는 템플릿 언어를 제공해준다.
템플릿 언어는 html에서 파이썬 변수와 문법을 사용할 수 있게 해주는 것으로 장고를 사용할 때 매우 유용하게 쓰인다.
이걸 이용하면 아무리 길어진 url도 변수 하나로 지정 가능해진다.
HelloDjango > urls.py
from django.contrib import admin
from django.urls import path, include
from board.views import main
urlpatterns = [
path('admin/', admin.site.urls),
path('', main, name = "mainPage"), # name = " "로 이 url에 이름을 만들 수 있다.
path('', include('navBar.urls')),
]
navBar > urls.py
from django.urls import path
from .views import comment
urlpatterns = [
path('comment/', comment, name = "commentPage"), # 마찬가지로 이름을 지어준다.
]
이제 이름을 지어줬으니, html에서도 href 부분을 바꿔줘야한다.
board > templates > board > main.html
<!DOCTYPE html>
<head>
</head>
<body>
<h1>
Hello Django!
</h1>
<a href='{% url "commentPage" %}'>comment</a>
<!-- {% %}(템플릿 태그) 안에 url과 url의 이름을 지정한다. -->
</body>
navBar > templates > navBar > comment.html
<!DOCTYPE html>
<head>
</head>
<body>
<h1>
This is Comment Tab
</h1>
<a href ='{% url "mainPage" %}'>main</a>
<!-- 이 부분도 똑같이 사용해준다. -->
</body>
표면상 바뀐건 없지만 url을 변수처럼 이용해서 사용 가능하다는게 이점이다.
'Python > Python_Django' 카테고리의 다른 글
[Python_Django] HTML의 <a> 태그를 이용해서 페이지 이동하기 (0) | 2020.04.25 |
---|---|
[Python_Django] 각 앱에서 urlpatterns 관리하기 (0) | 2020.04.25 |
[Pytho_Django] HTML을 이용한 메인 탭 만들기 (1) | 2020.02.03 |
[Python_Django] 관리자 계정에서 테이블 관리하기 (0) | 2020.02.01 |