Hello wuelfhis,
Do you have 1.99.7 stable? I believe this has been fixed in trunk and in
the nightly build. Can you try it?
Massimo
On Wednesday, May 16, 2012 4:42:55 PM UTC-5, wuelfhis asuaje wrote:
>
> It only happens in version 1.99.7
>
> in 1.99.1 works perfect
>
> Only happens when the table or (i don't know if model) has a float or
> decimal field
>
> That's what i ran:
>
> In [66]: rows = db().select(db.fc_pago.ALL)
> ---------------------------------------------------------------------------
> KeyError Traceback (most recent call last)
> /home/wasuaje/Documentos/desarrollo/web2py2/applications/flota/models/plugin_jqgrid.py
>
> in <module>()
> ----> 1 rows = db().select(db.fc_pago.ALL)
>
> /home/wasuaje/Documentos/desarrollo/web2py2/gluon/dal.pyc in select(self,
> *fields, **attributes)
> 7576 adapter = self.db._adapter
> 7577 fields = adapter.expand_all(fields,
> adapter.tables(self.query))
> -> 7578 return adapter.select(self.query,fields,attributes)
> 7579
> 7580 def delete(self):
>
> /home/wasuaje/Documentos/desarrollo/web2py2/gluon/dal.pyc in select(self,
> query, fields, attributes)
> 1318 limitby = attributes.get('limitby', None) or (0,)
> 1319 rows = self.rowslice(rows,limitby[0],None)
> -> 1320 return self.parse(rows,fields,self._colnames)
> 1321
> 1322 def _count(self, query, distinct=None):
>
> /home/wasuaje/Documentos/desarrollo/web2py2/gluon/dal.pyc in parse(self,
> rows, fields, colnames, blob_decode)
> 1615 colset = new_row[tablename]
> 1616 colset[fieldname] = value = \
> -> 1617
> self.parse_value(value,field.type,blob_decode)
> 1618
> 1619 if field.type == 'id':
>
> /home/wasuaje/Documentos/desarrollo/web2py2/gluon/dal.pyc in
> parse_value(self, value, field_type, blob_decode)
> 1494 else:
> 1495 key = regex_type.match(field_type).group(0)
> -> 1496 return self.parsemap[key](value,field_type)
> 1497
> 1498 def parse_reference(self, value, field_type):
>
> KeyError: 'float'
>
>
> my model
> #--------
> db.define_table('fc_pago',
> Field('id','integer'),
> Field('fecha','date'),
> Field('total','double'), #tryed with decimal or float here in mysql is
> float
> Field('descripcion','string'),
> Field('mt_persona_id','integer'),
> migrate=False)
>
> db.fc_pago.mt_persona_id.requires = IS_IN_DB(db,db.mt_persona.id,'%(nombres)s
> %(apellidos)s' )
> db.fc_pago.mt_persona_id.represent=lambda val: db.mt_persona[val].nombres
>
>
>
> Database Mysql
>
> mysql Ver 14.14 Distrib 5.5.22, for debian-linux-gnu (i686) using
> readline 6.2
>
> What's going on here?
>