Изображение обложки блога Odoo не отображается

Я создал собственный последний шаблон блога. Но я не могу показывать обложки в миниатюрах.

Изображение обложки должно быть здесь:

введите здесь описание изображения

Я написал следующий код, чтобы показать изображение обложки:

<div class="panel">
    <t t-set="properties" t-value="json.loads(post.cover_properties)">
       <a class="o_panel_cover" t-attf-href="#{blog_url('', ['blog', 'post'], blog=post.blog_id, post=post)}" t-att-style="background-image: #{cover_properties.get('background-image')};">
       </a>
    </t>
    <div class="panel-heading mt0 mb0">
        <h4 class="mt0 mb0">
          <a t-attf-href="#{blog_url('', ['blog', 'post'], blog=post.blog_id, post=post)}" t-field="post.name"></a>
          <span t-if="not post.website_published" class="text-warning">
             <span class="fa fa-exclamation-triangle ml8" title="Unpublished"/>
          </span>
        </h4>
    </div>

After writing the code image not loading and it shows like this:

введите здесь описание изображения

Как я могу показать изображение?


person Tanzil Khan    schedule 25.11.2016    source источник
comment
также, если я наберу следующее: t-attf-style="background-image: #{cover_properties.get('background-image')};" он говорит, что ни один тип объекта не имеет атрибута get.   -  person Tanzil Khan    schedule 25.11.2016


Ответы (2)


Я предлагаю вам очистить кеш браузера, иногда из-за перегрузки кеша мы не получаем изображение.

person Nitin Kantak    schedule 25.11.2016
comment
Это, конечно, не так. - person Tanzil Khan; 25.11.2016

Во-первых, есть несколько вещей с контроллером.

Последний почтовый маршрут не отображает свойства обложки, как показано ниже:

return request.render("website_blog.latest_blogs", {
        'posts': posts,
        'pager': pager,
        'blog_url': blog_url,
    })

Поэтому я добавил необходимые функции в свой контроллер и вернулся так:

return request.render("website_blog.latest_blogs", {
        'posts': posts,
        'pager': pager,
        'blog_url': blog_url,
        'blogs':blogs,
        'blog_posts': blog_posts,
        'blog_posts_cover_properties': [json.loads(b.cover_properties) for b in blog_posts],
    })

В XML возвращается вот так:

 <t t-set="cover_properties" t-value="blog_posts_cover_properties[post_index]"/>
    <a class="o_panel_cover" t-attf-href="#{blog_url('', ['blog', 'post'], blog=post.blog_id, post=post)}" 
      t-attf-style="background-image: #{cover_properties.get('background-image')};"></a>
person Tanzil Khan    schedule 26.11.2016