Как я могу использовать date_list из Общих Представлений Даты в Django?
У меня есть эта функция, которую я использовал для преобразования объектов даты из моих сообщений в блоге в словарь лет и месяцев, которые я могу отображать на боковой панели:
def post_dates(self):
"""Get dictionary of dates for all posts."""
grouped_dates = groupby(Post.objects.datetimes('published', 'month'),
lambda date: date.year)
def get_months(dates):
return [{'name': months[d.month],
'num':str(d.month).zfill(2)} for d in dates]
dates = [{"year": year, 'months': get_months(dates)}
for year, dates in grouped_dates]
return dates
Теперь я перехожу к использованию универсальных представлений даты, все из которых обеспечивают date_list
в контексте.
В настоящее время URL для меня выглядит следующим образом:
url(r'posts/(?P<year>\d{4})/?',
YearArchiveView.as_view(model=Post, date_field="published"), name="post_year_archive"),
Так что я не подклассифицировал мнение.
Я действительно не хочу писать мнение для каждого. Я думал, что вы могли бы сделать это в context_processor
но я читал, что вы не можете получить доступ к текущему контексту из процессора контекста.
Как я могу настроить свой код для работы с универсальным представлением даты без создания подклассов? Если нет, дайте мне знать, и почему?