blob: bfb5912bff12f2a5af88c5cfa12c93bb04e986e7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
from ..formatting import Formatter
_formatter = Formatter()
class FormattableMixin(object):
_formatter = _formatter
def format(self, fmt, locale=None):
"""
Formats the instance using the given format.
:param fmt: The format to use
:type fmt: str
:param locale: The locale to use
:type locale: str or None
:rtype: str
"""
return self._formatter.format(self, fmt, locale)
def for_json(self):
"""
Methods for automatic json serialization by simplejson
:rtype: str
"""
return str(self)
def __format__(self, format_spec):
if len(format_spec) > 0:
if "%" in format_spec:
return self.strftime(format_spec)
return self.format(format_spec)
return str(self)
def __str__(self):
return self.isoformat()
|