Skip to content

Commit 0f763cf

Browse files
committed
Resolve reoccurrence of issue #78 for admin list display converts
1 parent 101c71a commit 0f763cf

File tree

3 files changed

+11
-11
lines changed

3 files changed

+11
-11
lines changed

jalali_date/admin.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
from jalali_date import date2jalali, datetime2jalali
66
from jalali_date.fields import JalaliDateField, SplitJalaliDateTimeField
7+
from jalali_date.utils import normalize_strftime
78
from jalali_date.widgets import AdminJalaliDateWidget, AdminSplitJalaliDateTime
89

910
overrides = {
@@ -62,6 +63,7 @@ def func(obj):
6263
if not g_date:
6364
return ''
6465
else:
66+
strftime = normalize_strftime(strftime)
6567
return convert_func(g_date).strftime(strftime)
6668

6769
func.short_description = field.verbose_name
@@ -89,4 +91,3 @@ def __init__(self, *args, **kwargs):
8991
formfield_overrides.update(self.formfield_overrides)
9092
self.formfield_overrides = formfield_overrides
9193
super(TabularInlineJalaliMixin, self).__init__(*args, **kwargs)
92-

jalali_date/templatetags/jalali_tags.py

+1-10
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
from django.conf import settings
66

77
from jalali_date import date2jalali, datetime2jalali
8+
from jalali_date.utils import normalize_strftime
89

910
django_version = get_version()
1011
if StrictVersion(django_version) >= StrictVersion('1.9'):
@@ -27,16 +28,6 @@ def contents(self):
2728
return self.value
2829

2930

30-
def normalize_strftime(strftime):
31-
"""
32-
Normalize strftime values to make sure their usable for datetime libraries.
33-
"""
34-
if not isinstance(strftime, str):
35-
# Convert non-str values to str to support stuff like "lazy_translations".
36-
strftime = str(strftime)
37-
return strftime
38-
39-
4031
@register.filter
4132
def to_jalali(g_date, strftime=None):
4233
if g_date is None:

jalali_date/utils.py

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
def normalize_strftime(strftime):
2+
"""
3+
Normalize strftime values to make sure their usable for datetime libraries.
4+
"""
5+
if not isinstance(strftime, str):
6+
# Convert non-str values to str to support stuff like "lazy_translations".
7+
strftime = str(strftime)
8+
return strftime

0 commit comments

Comments
 (0)