calc_field = db.hourlydata.TotalAsh / db.hourlydata.TotalMass
rows = db( db.hourlydata.DevId==1 ).select( db.hourlydata.DevId, calc_field
)
for row in rows:
print row.DevId, row[calc_field]
tl;dr: every expression gets saved into the row as a field in the _extra
dict (see for yourself printing "row").
That field is retrievable passing the string representation of the
expression itself as a key. The smart thing here is that you can easily
assign that calculated field to a variable and use that variable as a key
later for accessing the value directly from the row (and save lots of
typing ^__^)
On Sunday, October 20, 2013 8:56:30 PM UTC+2, Sergio R. wrote:
>
> Im using adhoc calculated field ( db.hourlydata.TotalAsh /
> db.hourlydata.TotalMass ) in db().select() statement.
>
> rows = db( db.hourlydata.DevId==1 ).select( db.hourlydata.DevId,
> db.hourlydata.TotalAsh / db.hourlydata.TotalMass )
>
> Is it possible to define custom names for fields in db().select()
> statement ?
>
> If it is not possible, how can I access second field from previous example
> ?
>
> tableData = [[ row.DevId, row.*whats_going_here?*] for row in rows ]
>
--
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
---
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.