본문 바로가기
Develop/Django(Exercise)_v1

4. ORM(Object Relation Mapping)

by 보보트레인 2023. 9. 15.

기존의 html을 데이터 전환 방식으로 변경( 템플릿 태그를 이용하여 데이터를 뷰로부터 받을 수 있음 )

<html>
    <head>
        <title>Photo App</title>
    </head>
    <body>
        <h1><a href="">사진 목록 페이지</a></h1>
        <section>
            {% for photo in photos %}
            <div>
                <h2>
                    <a href="">{{photo.title}}</a>"
                </h2>
                <img src = "{{ photo.name }}" alt="{{photo.title}}" width="300" />
                <p>{{ photo.author }}, {{ photo.price }}원</p>    
            </div>
            {% endfor %}
        </section>
    </body>
</html>

 

view( 데이터 가져오는 ..) 도 적절하게 변경

from django.shortcuts import render
from .models import Photo

# Create your views here.
def photo_list(request):
    photos = Photo.objects.all()
    return render(request, 'photo/photo_list.html', {'photos': photos})

설명 : Photo.objects.all()을 통해 Photo 모델 데이터를 모두 가져왔다. 

{}에 넣어서 템플릿으로 전달하고

템플릿은 전달받은 photos를 템플릿 태그와 함께 사용할 것이다.

 

<내가 어드민 페이지에서 넣은 데이타>

<실제 출력되는 화면>

잘 나옵니다.

반응형