# HG changeset patch # User Sylvain Thénault # Date 1253025105 -7200 # Node ID bad0ff9b0c13bc77e2983bbe83d45917986cc930 # Parent 7918d4a5cdbfe998eac4864afc8f0cabfb5fe1de fix when Interval is coming from date substraction diff -r 7918d4a5cdbf -r bad0ff9b0c13 web/views/baseviews.py --- a/web/views/baseviews.py Mon Sep 14 16:24:01 2009 +0200 +++ b/web/views/baseviews.py Tue Sep 15 16:31:45 2009 +0200 @@ -15,6 +15,8 @@ __docformat__ = "restructuredtext en" _ = unicode +from datetime import timedelta + from rql import nodes from logilab.mtconverter import TransformError, xml_escape, xml_escape @@ -77,6 +79,10 @@ self.w(entity.printable_value(rtype, value, format=format)) return if etype in ('Time', 'Interval'): + if etype == 'Interval' and isinstance(value, (int, long)): + # `date - date`, unlike `datetime - datetime` gives an int + # (number of days), not a timedelta + value = timedelta(days=value) # value is DateTimeDelta but we have no idea about what is the # reference date here, so we can only approximate years and months if format == 'text/html':