В моем urls.py у меня есть:
(r'^(?P<year>\d{4})/(?P<month>\d{2})/(?P<day>\d{2})/section/(?P<slug>[-\w]+)/$',
'paper.views.issue_section_detail',
{},
'paper_issue_section_detail'
),
и я пытаюсь сделать это в шаблоне:
{% url paper_issue_section_detail issue.pub_date.year,issue.pub_date.month,issue.pub_date.day,section_li.slug %}
но я получаю эту ошибку:
TemplateSyntaxError
Caught an exception while rendering: Reverse for 'paper_issue_section_detail' with arguments '(2010, 1, 22, u'business')' and keyword arguments '{}' not found.
Однако, если я изменю шаблон URL, чтобы он требовал только один аргумент, он работает нормально. то есть:
(r'^(?P<year>\d{4})/$',
'paper.views.issue_section_detail',
{},
'paper_issue_section_detail'
),
и:
{% url paper_issue_section_detail issue.pub_date.year %}
Таким образом, кажется, что жалуются, когда я передаю более одного аргумента с использованием тега шаблона «url» - я получаю ту же ошибку с двумя аргументами. Есть ли другой способ передать несколько аргументов? Я попытался передать именованные аргументы ключевого слова, и это приводит к аналогичной ошибке.
Что бы это ни стоило, связанное представление начинается так:
def issue_section_detail(request, year, month, day, slug):
Как передать тегу шаблона URL более одного аргумента?