Код моего шаблона:
{% for post in page.get_children %}
ONE {{ post.title }} <--- it shows correct, excepted title
{% for block in post.body %}
TWO <--- this is NEVER showen
{% endfor %}
{% endfor %}
Это мой BlogIndexPage:
class BlogIndexPage(Page):
body = StreamField([
('heading', blocks.CharBlock(classname="full title")),
('paragraph', blocks.RichTextBlock()),
('image', ImageChooserBlock()),
])
content_panels = Page.content_panels + [
StreamFieldPanel('body'),
]
Это мой блог:
class BlogPage(Page):
date = models.DateField(auto_now=True)
tags = ClusterTaggableManager(through=BlogPageTag, blank=True)
categories = ParentalManyToManyField('blog.BlogCategory', blank=True)
body = StreamField([
('heading', blocks.CharBlock(classname="full title")),
('paragraph', blocks.RichTextBlock()),
('image', ImageChooserBlock()),
])
content_panels = Page.content_panels + [
MultiFieldPanel([
FieldPanel('tags'),
FieldPanel('categories', widget=forms.CheckboxSelectMultiple),
], heading="Blog information"),
StreamFieldPanel('body'),
]
Я просто не могу получить доступ к свойствам блока, потому что post.body выглядит как пустой массив (я добавил BlogPage как дочерний элемент BlogIndexPage, и я заполнил StreamField текстом, заголовками и изображениями - он не пустой)
Я уверен, что мне не хватает чего-то очевидного, но я сам не вижу этого.