2014-03-26 6 views
0

문제를 해결하는 데 도움주세요.미리보기 이미지를 표시하는 방법은 무엇입니까?

나는 그런 코드를 가지고있다. 그것은 작동 : models.py :

class Drt(models.Model): 
    title = models.CharField(max_length=100) 
    date = models.DateField() 
    image = models.FileField(upload_to='avtos/static/uploads/') 

    @classmethod 
    def get_all_entries(self): 
     return self.objects.all() 

    @property 
    def image_name(self): 
     return os.path.basename(self.image.name) 

template.html : 나는 sorl.thumbnail 모듈을 적용하고 다음 코드를 작성하려합니다

{% load staticfiles thumbnail %} 

<div class="list"> 
    {% for entrie in all_entries_avtopark %} 
     <a class="fancybox" href='static/uploads/{{ entrie.image_name }}'> 
     {% thumbnail entrie.image "204x127" crop="center" as im %} 
      <img class="" alt="{{ entrie.title }}" src='static/uploads/{{ entrie.image_name }}' width="204" height="127" /> 
     {% endthumbnail %} 
     </a> 
    {% endfor %} 
</div> 

. template.html :

결과 이미지가 표시되지 않습니다
<div class="list"> 
    {% for entrie in all_entries_avtopark %} 
     <a class="fancybox" href='static/uploads/{{ entrie.image_name }}'> 
     {% thumbnail "static/uploads/{{ entrie.image_name }}" "204x127" crop="center" as im %} 
      <img class="" alt="{{ entrie.title }}" src='{{ im.url }}' /> 
     {% endthumbnail %} 
     </a> 
    {% endfor %} 
</div> 

이 (SRC 링크가 어디에도 이어질 없음).

미리보기 이미지 정적 파일을 어떻게 인쇄 할 수 있습니까? 여기

답변

0

당신이 경우에 대한 예 :

<div class="list"> 
    {% for entrie in all_entries_avtopark %} 
     <a class="fancybox" href='/media/{{ entrie.image }}'> 
     {% thumbnail entrie.image "204x127" crop="center" as im %} 
      <img class="" alt="{{ entrie.title }}" src='{{ im.url }}' /> 
     {% endthumbnail %} 
     </a> 
    {% endfor %} 
</div> 

및 문서 보통 미디어 디렉토리 (정적이지)에 저장된 사용자가 업로드 link for sorl thumbnail

MediaFiles를.

0

image_name 메서드가 필요하지 않습니다. sorl-thumbnail templatetag는 FileFields를 처리하는 방법을 알고 있습니다. 그래서이 작동합니다 :

{% thumbnail entrie.image "204x127" crop="center" as im %} 
    <img class="" alt="{{ entrie.title }}" src='{{ im.url }}' /> 
{% endthumbnail %} 

또한, 원본 이미지에 대한 링크를 들어, 당신이 당신의 upload_to 구성을 사용하여 효과, 파일에 당신에게 절대 경로를 줄 것이다 FileField와의 url 속성을 사용해야하며, 또한 MEDIA_URL 구성. 그런데

<div class="list"> 
    {% for entrie in all_entries_avtopark %} 
     <a class="fancybox" href="{{ entrie.image.url }}"> 
     {% thumbnail entrie.image "204x127" crop="center" as im %} 
      <img class="" alt="{{ entrie.title }}" src='{{ im.url }}' /> 
     {% endthumbnail %} 
     </a> 
    {% endfor %} 
</div> 

, 당신은 항상 필드에 이미지를 저장할 것을 알고있는 경우에, 어쩌면 업로드 된 파일이 실제로 이미지를 검증 ImageField을 사용하는 것이 좋을 것이다.

관련 문제