Отображение содержимого страницы с помощью django-page-cms

Я хотел бы отображать некоторый контент, расположенный в моих моделях, на некоторых страницах моих шаблонов.

Я использую django-page cms

В документации представления не используются для отображения содержимого. Вместо этого используются готовые шаблонные теги.

http://packages.python.org/django-page-cms/display-content.html

Я не понимаю ни слова в этом. Пожалуйста, потерпите меня, я новичок.

Все, что я хочу сделать, это отобразить некоторую информацию, расположенную в моих моделях, внутри шаблона таким образом.

   {% if latest_news_list %}          
      {% for news in latest_news_list %} 
           <li><h3>{{ news.title }}</h3></li>
           <li><p>{{ news.body }}</p></li>
      {% endfor %}

Поскольку представления не используются, я не могу использовать, если last_news_list. Мне нужно каким-то образом заставить мои модели отображаться в шаблонах, используя CMS django-page, а НЕ обычные представления. В документации указано, что для этого нужно использовать какой-то тег шаблона.

Не мог бы кто-нибудь объяснить мне, как это сделать.
Также хотелось бы получить четкое и краткое объяснение следующих готовых тегов шаблона... * get_content * show_content * get_page * show_absolute_url

взято с http://packages.python.org/django-page-cms/display-content.html

Мне нужно отобразить информацию, содержащуюся в следующих моделях, так, как я выделил выше. Большое спасибо за Вашу помощь. мои модели следующие.

class Body(models.Model):
    type = models.ForeignKey(Content)
    title = models.CharField(max_length=100)
    published = models.DateTimeField(default=datetime.now)
    body = tinymce_models.HTMLField("Main content")

Как я уже сказал, я очень новичок в этом, пожалуйста, сделайте объяснения как можно проще.


person Stu    schedule 04.10.2010    source источник


Ответы (1)


Упомянутые вами теги шаблона должны отображать контент, поступающий из cms. Если вы хотите включить данные, поступающие из вашего приложения, вы должны увидеть этот разделтекст ссылки.

def extra_context():
    from myapp.models import Body
    items = Body.object.all()
    return {'items': items}

PAGE_EXTRA_CONTEXT = extra_context


{% if items %}
    <ul>
        {% for item in items %}
        <li>{{ item.title }} </li>
        {% endfor %}
    <ul>
{% endif %}

Или, если вы хотите использовать представление своего приложения, см. эту.

person Bernhard Vallant    schedule 04.10.2010