misc: mark strptime as a @stringfilter (#19576)

This commit is contained in:
Frédéric Péters 2017-10-20 09:17:52 +02:00
parent 28e0bd1746
commit c4a08be18a
2 changed files with 3 additions and 0 deletions

View File

@ -22,6 +22,7 @@ from django import template
from django.core.exceptions import PermissionDenied
from django.template import RequestContext
from django.template.base import TOKEN_BLOCK, TOKEN_VAR
from django.template.defaultfilters import stringfilter
from django.utils import dateparse
from combo.data.models import Placeholder
@ -149,6 +150,7 @@ def page_absolute_url(context, page):
return context['request'].build_absolute_uri(page.get_online_url())
@register.filter(name='strptime')
@stringfilter
def strptime(date_string, date_format):
try:
return datetime.datetime.strptime(date_string, date_format)

View File

@ -11,6 +11,7 @@ def test_strptime():
t = Template('{% load combo %}{{ someday|strptime:"%Y-%m-%d"|date:"Y" }}')
assert t.render(Context({'someday': '2015-04-15'})) == '2015'
assert t.render(Context({'someday': 'foobar'})) == ''
assert t.render(Context({'someday': None})) == ''
def test_parse_datetime():
t = Template('{% load combo %}{{ someday|parse_datetime|date:"Y m d H i s T" }}')