Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 27, 2013 23:41:42

Minuteman
Зарегистрирован: 2013-08-19
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

Django widget.

Добрый вечер!

Добрался я до создания виджетов. Нашел я думаю вполне известную батарейку django-sidebar (https://github.com/ekaputra07/django-sidebar), где благополучно создаю текстовые виджеты. Также сайдбар очень удобен в админке для смены порядка виджетов, поэтому я его и выбрал. Но захотел я сделать поостроумнее, чтобы например выводились последние посты из определенной категории. Для начала возьмем просто последние 3 поста(заголовка).

Пытаюсь исполнить код, но ничего не исполняется(latest_posts.py):


from sidebar.base import SidebarWidget, sidebar_widget
from django import forms
from news.models import Post #Здесь подключаю модель
#В TEMPLATE хочу и запихнуть этот код но не выходит. Т е хочу передать корректно post.
TEMPLATE = """
<div class="last_posts">
{% for post in posts %}
   <div>{{post.title}}</div>
{% endfor %}
 </div>
"""
#TEMPLATE = get_template('latest_posts_widget.html') # Здесь я пытаюсь выполнить второй метод - подключить файл шаблона, а не громоздить здесь шаблон
class TextForm(forms.Form):
    text = forms.CharField(widget=forms.Textarea) # здесь просто подключение поля textarea для админки
    posts = BlogPost.objects.all()[:3]  # Здесь и пытаюсь вывести эти 3 поста
#render_to_response('latest_posts_widget.html', {"posts": posts})  # Или тут что-то вроде такого? Но не умещается в голове такой подход.
class LatestPosts(SidebarWidget):
    #admin_form = TextForm
    #template_text = get_template('latest_posts_widget.html') ## И здесь пытался напрямую подключить template и все что мы видим в   TEMPLATE, просто бы оказалось в 'latest_posts_widget.html
    template_text = TEMPLATE
# register the Widget
sidebar_widget = LatestPosts('Latest Posts','Display a Latest Posts')

Кто-нибудь использует подобную батарейку?
Есть какие-нибудь идеи? Хотелось бы чтобы этот TEMPLATE в этом же файле и принимал, но если есть другие решения буду очень благодарен.
Спасибо.

Отредактировано Minuteman (Авг. 28, 2013 23:31:00)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version