【发布时间】:2018-11-28 19:28:05
【问题描述】:
我正在尝试完成 wagtail 教程,但在尝试实现图像时遇到了问题。我上传并添加到博客文章中的图像显示在文章列表页面中,但未显示在文章详细信息页面中。谁能让我知道我现在缺少什么以及是否需要分享任何其他信息。谢谢!
我正在使用 wagtail V2.1,这是我当前的代码:
blog/models.py 用于帖子详细信息页面类:
class PostPage(Page):
body = RichTextField(blank=True)
date = models.DateTimeField(verbose_name='Post date',default=datetime.datetime.today)
categories = ParentalManyToManyField('blog.BlogCategory',blank=True)
tags = ClusterTaggableManager(through='blog.BlogPageTag',blank=True)
header_image = models.ForeignKey(
'wagtailimages.Image',
null=True,
blank=True,
on_delete=models.SET_NULL,
related_name='+',
)
content_panels = Page.content_panels + [
ImageChooserPanel('header_image'),
FieldPanel('body', classname="full"),
FieldPanel('categories',widget=forms.CheckboxSelectMultiple),
FieldPanel('tags'),
]
settings_panels = Page.settings_panels + [
FieldPanel('date'),
]
@property
def blog_page(self):
return self.get_parent().specific
def get_context(self,request,*args,**kwargs):
context = super(PostPage,self).get_context(request,*args,**kwargs)
context['blog_page'] = self.blog_page
return context
博文详细信息页面的blog/templates/blog/post_page.html:此处不显示图片
{% extends "blog/base.html" %}
{% load wagtailcore_tags wagtailimages_tags wagtailroutablepage_tags %}
{% block content %}
<!-- Post Title -->
<h1>{{ page.title }}</h1>
<hr>
<!-- Post Image -->
{% if post.header_image %}
{% image post.header_image original as header_image %}
<img src="{{ header_image.url }}" class="img-responsive" ></img>
{% endif %}
<hr>
<!-- Post Body -->
{{ page.body|richtext }}
<hr>
<p><a href="{{ page.get_parent.url }}">Return to blog</a></p>
{% endblock %}
blog/templates/blog/blog_page.html 用于帖子列表页面:图片显示在这里
{% extends "blog/base.html" %}
{% load static wagtailcore_tags wagtailimages_tags blogapp_tags %}
{% block content %}
<h1>{{ blog_page.title }}</h1>
<div class="intro">{{ blog_page.description }}</div>
{% for post in posts %}
<!-- Post Image -->
{% if post.header_image %}
{% image post.header_image original as header_image %}
<img src="{{ header_image.url }}" class="img-responsive" ></img>
{% endif %}
<!-- Post Title -->
<h2>
<a href="{% post_date_url post blog_page %}">{{ post.title }}</a>
</h2>
{% endfor %}
{% endblock %}
【问题讨论】:
标签: django python-3.x wagtail