장고 템플릿에 이미지 보이를 보이려면 어떻게 해야하나요?


안녕하세요. django 관련 질문 입니다. 제 질문은 장고 템플릿에 이미지를 이미지와 관련된 모델과 같이 display 하는 방법 입니다. 제가 크롤링한 테이터로 한국 여배우 목록을 정리해서 보여주는 웹사이트를 만들고 있는데 여배우 이름과 이미지는 우선 다운 받아 놓은 상태 입니다. 우선, name 모델과 다운받은 이미지의 로컬경로가 있는 image_paths 모델 (이 두 모델은 다운받은 데이터의 순서가 같음)이 있고 실제 이미지가 있는 image 폴더가 있습니다. (image_paths와 순서 불일치, 각각의 파일명은 image_ptath와 같음) 그런데 여기서부터 막히는데요

class images(models.Model):
    name = models.CharField(max_length=30)
    image_urls = models.CharField(max_length=200)
    images = models.TextField()
    image_paths = models.TextField(null=True)

질문,

위 모델들의의 데이터 순서와 동일하게 image 폴더의 사진들을 장고 템플릿에 나타내려면 어떻게 해야 할까요?

정말 모르겠네요 ㅠㅠ


조회수 164


1 답변


좋아요
2
싫어요
채택취소하기

저 모델은 데이터베이스에 순서대로 차곡차곡 쌓이고

사진은 폴더에 파일명 순서(혹은 다른것)로 정렬이 됩니다

그래서 그냥 django에서 순서대로 불러오면

폴더에 있는 파일을 데이터베이스에 저장한 순서대로 가져올겁니다.

그저 템플릿에

<% for image in images %>
    <img src="{{ image.image_paths }}" alt="{{ image.name }}">
<% endfor %>

이런식으로 가져오시면 될거에요

만약 데이터베이스에 쌓인 순서가 아닌 파일명 순서를 말씀하신거라면

order by를 사용해서 파일명기준으로 오름차순하시면 될것같아요

  • 2016년 06월 20일에 작성됨
    웹을 좋아함

  • 답변 감사합니다. 지금 해봤는데 경로문제가 있는 것 같습니다. 이 경우에도 media나 static setting을 해주어야 하는건가요??    Jinwithyoo   2016.6.20 22:44     
  • 아 ^^ 써주신 것처럼 image.image_paths 앞에 static/을 더했더니 정상적으로 출력 됩니다. 답변 감사합니다 ^^    Jinwithyoo   2016.6.21 04:24     

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close