Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 28, 2009 15:31:41

Mutagena
От:
Зарегистрирован: 2009-10-18
Сообщения: 295
Репутация: +  0  -
Профиль   Отправить e-mail  

Архив блога

Пытаюсь сделать блог на Django.
Подскажите, как сделать архив в сайдбаре?
Принцип вывода архива обычный: месяц (кол-во постов).
Вот модель поста:

class Post(models.Model):
author = models.ForeignKey(User)
date = models.DateTimeField()
title = models.CharField(max_length=100)
post = models.TextField()
tags = models.ManyToManyField(Tag)
Никак не могу придумать как организовать логику в отображении. Подскажите, пожалуйста, желательно с примером.



Офлайн

#2 Дек. 28, 2009 15:41:54

SvartalF
От:
Зарегистрирован: 2008-06-29
Сообщения: 73
Репутация: +  0  -
Профиль   Отправить e-mail  

Архив блога

А что тут вообще думать-то, собственно?
В чем суть проблемы-то? Не знаете, как выборку постов за месяц сделать?
Или как в сайдбаре их вывести?

Как выборки делать: http://docs.djangoproject.com/en/1.1/ref/models/querysets/#ref-models-querysets
И как в сайдбаре вывести: http://docs.djangoproject.com/en/dev/howto/custom-template-tags/#howto-custom-template-tags

Не ленитесь.



Офлайн

#3 Дек. 28, 2009 16:12:51

Mutagena
От:
Зарегистрирован: 2009-10-18
Сообщения: 295
Репутация: +  0  -
Профиль   Отправить e-mail  

Архив блога

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



Офлайн

#4 Дек. 28, 2009 21:19:31

Mutagena
От:
Зарегистрирован: 2009-10-18
Сообщения: 295
Репутация: +  0  -
Профиль   Отправить e-mail  

Архив блога

Ну, может быть, кто-нибудь посоветует мне?



Офлайн

#6 Дек. 29, 2009 12:11:51

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Архив блога

Mutagena
Советую скачать пару проектов с исходниками и их по-изучать. Будет намного меньше таких вопросов.

Офлайн

#7 Дек. 29, 2009 14:56:06

Mutagena
От:
Зарегистрирован: 2009-10-18
Сообщения: 295
Репутация: +  0  -
Профиль   Отправить e-mail  

Архив блога

Ferroman, буду благодарна, если поделитесь проектом. Скачивала исходники из темы в этой ветке форума, так при запуске куча ошибок получается.



Офлайн

#8 Дек. 29, 2009 15:30:55

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Архив блога

Мои не подойдут для этого, да и не все я имею право показывать. :(

Ну, может нарою что.

Офлайн

#9 Дек. 29, 2009 15:46:12

Mutagena
От:
Зарегистрирован: 2009-10-18
Сообщения: 295
Репутация: +  0  -
Профиль   Отправить e-mail  

Архив блога

Ferroman, скачала вот этот исходник http://www.djangosites.org/s/demo-ilugc-org-in/
Написала свои параметры подключения к базе в настройках проекта.
Далее запустила сервер, запустился без ошибок, но в браузере вывелся такой трейсбек:

Traceback (most recent call last):

File “C:\Python26\lib\site-packages\django\core\servers\basehttp.py”, line 279, in run
self.result = application(self.environ, self.start_response)

File “C:\Python26\lib\site-packages\django\core\servers\basehttp.py”, line 651, in __call__
return self.application(environ, start_response)

File “C:\Python26\lib\site-packages\django\core\handlers\wsgi.py”, line 241, in __call__
response = self.get_response(request)

File “C:\Python26\lib\site-packages\django\core\handlers\base.py”, line 73, in get_response
response = middleware_method(request)

File “C:\Python26\lib\site-packages\django\middleware\locale.py”, line 16, in process_request
language = translation.get_language_from_request(request)

File “C:\Python26\lib\site-packages\django\utils\translation\__init__.py”, line 97, in get_language_from_request
return real_get_language_from_request(request)

File “C:\Python26\lib\site-packages\django\utils\translation\trans_real.py”, line 349, in get_language_from_request
lang_code = request.session.get('django_language', None)

File “C:\Python26\lib\site-packages\django\contrib\sessions\backends\base.py”, line 63, in get
return self._session.get(key, default)

File “C:\Python26\lib\site-packages\django\contrib\sessions\backends\base.py”, line 172, in _get_session
self._session_cache = self.load()

File “C:\Python26\lib\site-packages\django\contrib\sessions\backends\db.py”, line 16, in load
expire_date__gt=datetime.datetime.now()

File “C:\Python26\lib\site-packages\django\db\models\manager.py”, line 120, in get
return self.get_query_set().get(*args, **kwargs)

File “C:\Python26\lib\site-packages\django\db\models\query.py”, line 300, in get
num = len(clone)

File “C:\Python26\lib\site-packages\django\db\models\query.py”, line 81, in __len__
self._result_cache = list(self.iterator())

File “C:\Python26\lib\site-packages\django\db\models\query.py”, line 238, in iterator
for row in self.query.results_iter():

File “C:\Python26\lib\site-packages\django\db\models\sql\query.py”, line 287, in results_iter
for rows in self.execute_sql(MULTI):

File “C:\Python26\lib\site-packages\django\db\models\sql\query.py”, line 2369, in execute_sql
cursor.execute(sql, params)

File “C:\Python26\lib\site-packages\django\db\backends\util.py”, line 19, in execute
return self.cursor.execute(sql, params)

ProgrammingError: relation “django_session” does not exist
LINE 1: …ession_data“, ”django_session“.”expire_date“ FROM ”django_se…
^



Офлайн

#10 Дек. 29, 2009 16:39:04

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Архив блога

А syncdb ?

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version