Почему мое изображение не появляется? - PullRequest
3 голосов
/ 29 апреля 2011

Привет, я удивляюсь, почему мое изображение не появляется.Я думаю, что хранится как в качестве объекта blobproperty, так и в хранилище объектов blob, поскольку на странице списка он выглядит как миниатюра.Адрес страницы, на которой изображение не отображается: 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 %}

и мой серверный 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('/'),
    })

Если я использую старую версию страницы, изображение действительно появляется, поэтому ясно, что яу меня есть это в базе данных, я только что написал ошибку и мне нужно структурировать мою миграцию из свойства blobproperty в blobstore: http://www.koolbusiness.com/4125209

Так как изображение появляется на более позднем URL, я знаю, что оно есть, и оно простоошибка в моем коде, которую я не могу воспроизвести, из-за которой изображение не появляется.Спасибо за любую помощь

1 Ответ

4 голосов
/ 29 апреля 2011

Я бы предположил, что один из этих двух операторов if оценивается как false:

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

Если бы вы на самом деле вызывали get_serving_url, вы либо получили бы действующий URL-адрес обслуживания, либо исключение.Вместо этого, URL все еще имеет начальное значение - пустую строку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...