общие представления в django - как сделать вывод переменной даты правильным форматом - PullRequest
0 голосов
/ 06 августа 2011

Вот шаблон для ежемесячного архива (блога). Обратите внимание, что переменная {{ month }} дает мне полную дату первого дня месяца, например, 1 августа 2011 г. Как я могу сделать вывод переменной только за месяц (например, август)?

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Monthly Archive</title>
    </head>
    <body>
        <h1>Monthly Archive - {{ month }}</h1>
        {% for entry in object_list %}
        <p><a href="{{ entry.get_absolute_url }}">{{ entry.title }}</a></p>
        {% endfor %}
    </body>
</html>

Вот страница URL:

entry_info_dict = {
    'queryset': Entry.objects.all(),
    'date_field': 'pub_date',
}

    urlpatterns = patterns('',
        (r'^weblog/(?P<year>\d{4})/(?P<month>\w{3})/(?P<day>\d{2})/(?P<slug>[-\w]+)/$', 'django.views.generic.date_based.object_detail', entry_info_dict),
        (r'^weblog/(?P<year>\d{4})/$',
          'django.views.generic.date_based.archive_year',
          entry_info_dict),
        (r'^weblog/(?P<year>\d{4})/(?P<month>\w{3})/$',
          'django.views.generic.date_based.archive_month',
          entry_info_dict),
        (r'^weblog/(?P<year>\d{4})/(?P<month>\w{3})/(?P<day>\d{2})/$',
          'django.views.generic.date_based.archive_day',
          entry_info_dict),
        (r'^weblog/$', 'django.views.generic.date_based.archive_index',
          entry_info_dict),)

UPDATE

Хорошо, я понял, как фильтровать только месяц. Я должен использовать {{ month|date:"F" }} вместо просто {{ month }}. Тем не менее, я не знаком с синтаксисом здесь. Почему это "F"?

1 Ответ

1 голос
/ 06 августа 2011

Используйте фильтр даты, чтобы вы обновили свой вопрос, чтобы указать. 'F' - это исторический выбор, установленный PHP и сопровождаемый Python. У них просто закончились буквы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...