As a reference, you can see the example given by Massimo Di Pierro in this 
post https://groups.google.com/forum/#!msg/web2py/NXhu8PmvHOs/aO-oum4m0NgJ

Il giorno sabato 24 novembre 2012 05:36:48 UTC+1, apps in tables ha scritto:
>
> I am using web2py 2.2.1 . I did import time in db.py
>
> still the error , epoch is not defined.
>
> What did i do wrong?
>
> Ashraf
>
> On Saturday, November 24, 2012 7:13:18 AM UTC+3, apps in tables wrote:
>>
>> sorry, I need to use 2.1.1 or above.
>>
>> On Saturday, November 24, 2012 6:57:33 AM UTC+3, apps in tables wrote:
>>>
>>> Hi Niphlod,
>>>
>>> I got
>>>
>>> <type 'exceptions.NameError'>(global name 'epoch' is not defined)
>>>
>>> I am using version 2.0.9
>>>
>>> What did i miss?
>>>
>>> Ashraf
>>>
>>> On Friday, November 23, 2012 1:54:31 AM UTC+3, Niphlod wrote:
>>>>
>>>> Mind that the functionality is database dependant, hence you won't get 
>>>> the same results changing the db engine. Moreover you get different 
>>>> "rounding" errors trying to subtract similar dates.
>>>>
>>>> Recent web2py's DAL supports an "epoch()" method that returns "seconds 
>>>> passed since 1-1-1970". If you can live with that, it's more deterministic 
>>>> and safer and works in the same way in all engines (e.g., need to develop 
>>>> on sqlite and in production use postgresql) and its functionality is 
>>>> supported on practically every db.
>>>>
>>>> On Thursday, November 22, 2012 9:55:04 PM UTC+1, dederocks wrote:
>>>>>
>>>>> Hi, 
>>>>>
>>>>> If you have two datetime fields dta and dtb, a db().select(dta-dtb) 
>>>>> will return zero using the sqlite db, but a correct value if you use 
>>>>> postgresql for example.
>>>>> The trick to make it work is to replace dta by julianday(dta) in the 
>>>>> select, e.g. db().select(julianday(dta)-julianday(dtb)).
>>>>>
>>>>> I guess not that easy to fix, especially since this substitution would 
>>>>> have to operate only when a datetime delta is computed?
>>>>>
>>>>> Or is there a way to do it I havent't found?
>>>>>
>>>>> Andre
>>>>>
>>>>

-- 



Reply via email to