[Django] Todo 게시판_3 [상세조회 페이지 만들기]

2022. 8. 23. 19:42WEB/Django

todo 사이트 만들기-3

  • 상세 페이지 템플릿 생성 :
<html>
    <head>
        <title>TODO LIST</title>
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/1.0.0/css/bootstrap.min.css"/>
        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.7.1/font/bootstrap-icons/css"/>
    </head>
    <body>
    <div class="container">
        <h1>상세보기</h1>
        <div class="container">
            <div class="row">
                <div class="col-md-12">
                    <div class="card">
                        <div class="card-body">
                            <h5 class="card-title">{{todo.title}}</h5>
                            <p class="card-text">{{todo.description}}</p>
                            <a href="{% url 'todo_list' %}" class="btn btn-primary">목록으로</a>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    </body>
</html>
  • 뷰 정의 : 
  • 상세 조회를 위해 pk으로 구분하여 데이터를  가져오게 된다.
def todo_detail(request, pk):
    todo = Todo.objects.get(id=pk)
    return render(request, 'todo/todo_detail.html', {'todo':todo})
  • URL 연결 :
  • 주소 뒤에 pk 값을 구분
from django.contrib import admin
from django.urls import path, include
from . import views
urlpatterns = [
    path('admin/', admin.site.urls),
    path('',views.todo_list, name='todo_list'),
    path('<int:pk>/',views.todo_detail, name='todo_detail'),
]

- 완성화면