as a general rule of thumb, in web2py date(time(s)) are stored always in 
"pseudo-iso" format (YYYY-MM-DD) and transformed to/from according to the 
date format specified into languages. Are you using custom translation 
files and/or a different date-time widget than the default one included in 
web2py ?

On Monday, February 18, 2013 4:27:08 PM UTC+1, Mirek Zvolský wrote:
>
> Hi, 
> maybe this is DAL.py error? Or more as one - strange behavior for dates in 
> czech/german format - 'date' fields in tables cannot be used at all (!!)
>
> I have 'date' field in table 'akce' in SQLite database.
> I try a) after removing SQLite database I try run appadmin and browse 
> table 'akce' 
>        b) after removing SQLite database I insert first record and 
> immediately I try select records using db().select(db.akce.ALL)
>        c) same as b) but after replacing 'date' field in table definition 
> with 'datetime'
>
> 2.3.2 stable:
> a) http://localhost:8000/akce/appadmin/select/db?query=db.akce.id%3E0
>     appadmin fails with error message (1)-bellow
> b) select fails with error message (2)-bellow
> c) no error, but no row as select result (instead of proper one)
>
> 2.4.1 trunk (alpha.2 + timestamp.2013.01.10.21.26.18):
> a) appadmin will not fail, however count of rows will not display (there 
> is 'rows' instead of '0 rows' - in czech language)
> b) select fails in same way as in 2.3.2 (message (2) !!!!)
> c) select works fine for 'datetime' fields
>
> I think at least in b) case, reason is german/czech date format, which 
> SQLite driver get from DAL.py.
> Because
>    datetime.date(*map(int, val.split("-")))
> works well for dates like val='2013-02-19'.
> However sqlite3 driver will receive from DAL.py (func log_execute) the 
> date in local german/czech format like val='19.02.2013' and fails.
>
> So field type 'date' in tables cannot be used at all !
> Could this be repaired?
>
> Thanks, Mirek
>
>
>
> error (1) - I think this is fixed in trunk
>   File 
> "C:\Python27\Lib\site-packages\web2py\applications\akce\controllers/appadmin.py",
>  
> line 213, in select
>     nrows = db(query).count()
>   File "C:\Python27\Lib\site-packages\web2py\gluon\dal.py", line 8896, in 
> count
>     return db._adapter.count(self.query,distinct)
>   File "C:\Python27\Lib\site-packages\web2py\gluon\dal.py", line 1652, in 
> count
>     return self.cursor.fetchone()[0]
> TypeError: 'NoneType' object is not subscriptable
>
> error (2) - for 'date' fields, not fixed yet
>   File "C:\Python27\Lib\site-packages\web2py\gluon\restricted.py", line 
> 212, in restricted
>     exec ccode in environment
>   File 
> "C:/Python27/Lib/site-packages/web2py/applications/akce/controllers/akce.py", 
> line 47, in <module>
>   File "C:\Python27\Lib\site-packages\web2py\gluon\globals.py", line 193, 
> in <lambda>
>     self._caller = lambda f: f()
>   File 
> "C:/Python27/Lib/site-packages/web2py/applications/akce/controllers/akce.py", 
> line 7, in akce
>     db.akce.ALL, orderby=db.akce.sraz_kdy)
>   File "C:\Python27\Lib\site-packages\web2py\gluon\dal.py", line 9092, in 
> select
>     return adapter.select(self.query,fields,attributes)
>   File "C:\Python27\Lib\site-packages\web2py\gluon\dal.py", line 2178, in 
> select
>     return super(SQLiteAdapter, self).select(query, fields, attributes)
>   File "C:\Python27\Lib\site-packages\web2py\gluon\dal.py", line 1637, in 
> select
>     return self._select_aux(sql,fields,attributes)
>   File "C:\Python27\Lib\site-packages\web2py\gluon\dal.py", line 1602, in 
> _select_aux
>     self.execute(sql)
>   File "C:\Python27\Lib\site-packages\web2py\gluon\dal.py", line 1715, in 
> execute
>     return self.log_execute(*a, **b)
>   File "C:\Python27\Lib\site-packages\web2py\gluon\dal.py", line 1709, in 
> log_execute
>     ret = self.cursor.execute(*a, **b)
>   File "C:\Python27\lib\sqlite3\dbapi2.py", line 63, in convert_date
>     return datetime.date(*map(int, val.split("-")))
> ValueError: invalid literal for int() with base 10: '19.02.2013'
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to