misc: use force_str in lazy variables (#36515)
This commit is contained in:
parent
53812ecd8e
commit
8be31ef846
|
@ -16,6 +16,7 @@
|
|||
|
||||
import warnings
|
||||
|
||||
from django.utils import six
|
||||
from django.utils.encoding import force_text
|
||||
from django.utils.functional import SimpleLazyObject
|
||||
|
||||
|
@ -23,7 +24,7 @@ from quixote import get_publisher, get_request
|
|||
|
||||
from pyproj import Geod
|
||||
|
||||
from .qommon import misc
|
||||
from .qommon import misc, force_str
|
||||
from .qommon.evalutils import make_datetime
|
||||
from .qommon.templatetags.qommon import parse_datetime
|
||||
from .qommon.storage import (Or, Equal, NotEqual)
|
||||
|
@ -519,9 +520,9 @@ class LazyFieldVar(object):
|
|||
|
||||
def __str__(self):
|
||||
value = self.get_value()
|
||||
if isinstance(value, unicode):
|
||||
return value.encode(get_publisher().site_charset)
|
||||
return str(value)
|
||||
if not isinstance(value, six.string_types):
|
||||
value = str(value)
|
||||
return force_str(value)
|
||||
|
||||
def __nonzero__(self):
|
||||
if self._field.key == 'bool':
|
||||
|
|
Loading…
Reference in New Issue