Django==1.5.1 Django-cms==2.4.1
django-cms で選択したページのすべての子ページから要約ビューのようなものを作成し、タイトル、切り捨てられたコンテンツなどを、リストされた子ごとに詳細... リンクを付けて作成したいと思います。タイトルとパスをうまく取得できましたが、プレースホルダーからコンテンツを取得するのに苦労しています。
次のようなテンプレートタグがあります。
from cms.models import Page
from cms.utils.page_resolver import get_page_from_path
from django import template
register = template.Library()
@register.inclusion_tag('news_summary_item.html')
def get_news_items():
news_root = get_page_from_path('news')
newsitems = news_root.children.filter(published=True)
return {'newsitems':newsitems}
そして、これが使用するテンプレートです:
{% load cms_tags menu_tags %}
<ul>
{% for item in newsitems %}
<li><a href="/{{ item.get_path }}">{{ item.get_title }}</a>
{% for placeholder in item.placeholders.all %}
# {% show_placeholder placeholder.slot item current_language %} #
{% endfor %}
</li>
{% endfor %}
</ul>
ここでプレースホルダーのコンテンツを取得するのを手伝ってくれる人はいますか? 理想的には、要約を取得するために truncatewords_html を介して渡すことができるようにしたいと考えていますが、同じ効果を得るために他の方法を使用することもできます。
ヒント/ポインタをありがとう!