2011-04-29 123 views
3

嗨,我想知道爲什麼我的圖像不出現。我認爲它既存儲爲blobproperty也存儲在blobstore中,因爲它看起來像列表頁面上的縮略圖。在圖像不會出現在地址頁面是http://www.koolbusiness.com/servead/4125209爲什麼我的圖像不顯示?

來自同一圖像的縮略圖顯示在列表中http://www.koolbusiness.com/li

我的一些模板代碼顯示的圖像是:

{% if ad.matched_images.get %} <table><tr> 
     <td> 

      <div class="ad_pict" id="display_image"><img src="{{url}}" alt="" onload="show_hidden_elements();return false;"></div> 

     </td> <td> 

{% ifequal len 1 %} 
{% else %} 
      {% for im in imv %} 

      <div id="thumb0" class="ad_thumb ad_border_solid_black" onclick="showLargeImage('{{im}}');thumbnailBorder(this, 5)"> 
       <table class="clean_table shadowed_thumb" cellpadding="0" cellspacing="0"> 
        <tbody> 
         <tr> 
          <td><img src="/_/img/thumb_left_top.gif"></td> 
          <td class="top_middle" align="left" valign="bottom"></td> 
          <td></td> 
         </tr> 
         <tr> 
          <td class="middle_left"></td> 
          <td><img src="{{im}}=s120" alt=""> 

</td> 
          <td class="single_middle_right" valign="top"><img src="/_/img/thumb_single_right_top.gif"></td> 
         </tr> 
         <tr> 
          <td></td> 
          <td class="single_bottom_center" valign="top"><img src="/_/img/thumb_single_left_bottom.gif"></td> 
          <td valign="top"><img src="/_/img/thumb_single_right_bottom.gif"></td> 
         </tr> 
        </tbody> 
       </table> 
      </div> 

      {% endfor %} 

{% endifequal %} 

答索姆EOF我的服務器端的python加載模板是:

class AdHandler(I18NHandler): 
    def get(self, id): 
     ad = Ad.get_by_id(long(id)) 
     if not ad: 
      self.error(404) 
      return 
     image = ad.matched_images.get() 
     url='' 
     if image: 
      if image.primary_image: 
       url = images.get_serving_url(str(image.primary_image.key())) 

     imv = [] 
     table='' 
     for i in ad.matched_images: 
      if i.primary_image: 
       i1=images.get_serving_url(str(i.primary_image.key())) 
       imv.append(i1) 

     self.render_template("imageinfo.html", {'url':url, 
     'imv':imv,'len':len(imv), 
     'ad':ad, 
     'image': image, 
     'logout_url': users.create_logout_url('/'), 
    }) 

如果我用的是舊版本的頁面的圖片做了ppear所以很明顯,我有它在數據庫中,我只是寫了一個錯誤,需要從blobproperty至Blobstore構建我的移民:http://www.koolbusiness.com/4125209

由於圖像出現在後來的網址我知道它的存在和這只是我的代碼中的一個錯誤,我無法重現,導致圖像不顯示。感謝您的幫助

回答

4

我猜想,這兩個如果語句之一是評估爲false:

if image: 
     if image.primary_image: 
      url = images.get_serving_url(str(image.primary_image.key())) 

如果你實際調用get_serving_url,你要麼得到一個有效的服務URL或異常。相反,url仍然有其初始值,一個空白字符串。

+0

謝謝!你完全正確。這是image.primary_image,有時評估爲false。我不知道爲什麼,但至少現在我管理一個解決方法,添加一個子句'else:' – 2011-04-30 09:56:00