簡體   English   中英

Django - 在單獨的頁面上加載完整的圖像

[英]Django - Loading a full image on separate page

我一直試圖在我的圖像縮略圖上放置一個超鏈接,這將使用戶獲得一個完整大小的圖像。 但我一直在收到錯誤。

在這里,如下所示,scribblemedia是一個外來關鍵字

models.py

class ScribbleMedia(models.Model):
     media = models.FileField(upload_to=get_file_path)
     def __unicode__(self):
      return self.media
     def find_typecheck(self):
        filename = self.media.name
        try:
           ext = filename.split('.')[-1]
           imgcheck=['jpg','jpeg','png','gif','tiff','bmp']
           if ext in imgcheck :
              chk='image'
           else:
              chk='other'
        except Exception:
           chk='not supported'
        return chk

class Scribble(models.Model):
     title = models.CharField(max_length=120)
     body = models.TextField()
     user = models.ForeignKey(User)
     media = models.ForeignKey(ScribbleMedia)
     def __unicode__(self):
      return u'%s, %s' % (self.user.username, self.media)

views.py

@login_required
def image_page(request,pk):
    img=get_object_or_404(ScribbleMedia,pk=pk)
    image=img.media
    variables= RequestContext(request,{
    'image': image
    })
    return render_to_response('image_page.html',variables)

urls.py

(r"^image/(\d+)/$", image_page),

image_page.html

{% if  image %}
    <img src= {{ image.url }} />

這是圖像縮略圖可用的頁面

scribble_page.html

{% if scribble.media.media %}
                {% if scribble.media.find_typecheck == 'image' %}
                    {% thumbnail scribble.media.media.url "700x500" crop="center" as im %}
                            <a href="/image/{{ scribble.media.pk }}/" target="_blank"><img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}"></a>
                    {% endthumbnail %}
                {% else %}
                    do something else
                {% endif %}
            {% endif %}

它不斷給我以下錯誤:

/ image / 2處的TemplateSyntaxError /未關閉標記'if'。 尋找其中一個:elif,else,endif

您的scribble_page.html中的if語句沒問題。 您需要在image_page.html模板中關閉if塊...

{% if  image %}
  <img src="{{ image.url }}" /> <!-- Also note the added quotations... -->
{% endif %}  <!-- This is the line you need to add -->

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM