Beispiel #1
0
def iso8601(value):
    """
    Makes sure that an incoming ISO8601 value is formatted in the standard way
    that datetime.isoformat() does, since when we do comparisons against dates
    in mongo, the comparison is actual alphabetical order.

    :param value: ISO8601 string
    :type  value: basestring
    :return: ISO 8601 string
    :rtype:  basestring
    """
    try:
        return dateutils.parse_iso8601_datetime_or_date(value).replace(microsecond=0).isoformat()
    except isodate.ISO8601Error:
        raise ValueError('invalid ISO8601 string')
Beispiel #2
0
def iso8601(value):
    """
    Makes sure that an incoming ISO8601 value is formatted in the standard way
    that datetime.isoformat() does, since when we do comparisons against dates
    in mongo, the comparison is actual alphabetical order.

    :param value: ISO8601 string
    :type  value: basestring
    :return: ISO 8601 string
    :rtype:  basestring
    """
    try:
        return dateutils.parse_iso8601_datetime_or_date(value).replace(
            microsecond=0).isoformat()
    except isodate.ISO8601Error:
        raise ValueError(_('invalid ISO8601 string'))
Beispiel #3
0
 def test_datetime(self):
     ret = dateutils.parse_iso8601_datetime_or_date('2012-07-31T09:43:15')
     self.assertTrue(isinstance(ret, datetime.datetime))
Beispiel #4
0
 def test_datetime(self):
     ret = dateutils.parse_iso8601_datetime_or_date('2012-07-31T09:43:15')
     self.assertTrue(isinstance(ret, datetime.datetime))
Beispiel #5
0
 def test_date(self):
     ret = dateutils.parse_iso8601_datetime_or_date("2012-03-15")
     self.assertTrue(isinstance(ret, datetime.datetime))