8👍
The problem lives in the /(?P<month>\d{2})/
part of your url configuration. It only allows exactly two digits (\d{2}
) while issue.pub_date.month
is only one digit.
You can do either allow also one digit in the URL (but this will violate the principle of unique URLs, /2010/1/...
would be the same as /2010/01/...
) or pass two digits to the month argument in your url templatetag.
You can use the date
filter to achieve a consistent formating of date objects. Use the url tag like this:
{% url paper_issue_section_detail issue.pub_date|date:"Y",issue.pub_date|date:"m",issue.pub_date|date:"d",section_li.slug %}
Look at the month and day argument: It will be always displayed as two digits (with a leading zero if necessary). Have a look at the documentation of the now tag to see which options are possible for the date
filter.
13👍
I had the same issue (I’m using Django 1.3.1) and tried Gregor Müllegger’s suggestion, but that didn’t work for two reasons:
- there should be no commas between year, month and day values
- my class-based generic view seems to take only keyword arguments
Thus the only working solution was:
{% url news_detail slug=object.slug year=object.date|date:"Y" month=object.date|date:"m" day=object.date|date:"d" %}
- [Django]-How to test auto_now_add in django
- [Django]-Django JSONField inside ArrayField
- [Django]-Django/DRF – 405 Method not allowed on DELETE operation
5👍
Your month expression is (?P<month>\d{2})
, but you’re sending it the argument 1
. The 1
doesn’t match \d{2}
, so the url resolver isn’t finding your view.
Try changing the month expression to \d{1,2}
(or something to that effect).
- [Django]-Disabled field is not passed through – workaround needed
- [Django]-Function decorators with parameters on a class based view in Django
- [Django]-Django + Ajax