How groupby works in grid?
It seems that the query built include everytime the id field.
psycopg2.ProgrammingError: column "smsbytime.id" must appear in the GROUP
BY clause or be used in an aggregate function
db.define_table(
'smsbytime',
Field('year', 'integer'),
Field('month', 'integer'),
Field('day', 'integer'),
Field('hour', 'integer'),
Field('minute', 'integer'),
Field('nr', 'integer')
)
date_fields =
(db.smsbytime.year|db.smsbytime.month|db.smsbytime.day|db.smsbytime.hour)
sum = db.smsbytime.nr.sum()
grid = SQLFORM.grid(db.smsbytime.nr > 0,
fields=[db.smsbytime.year,
db.smsbytime.month,
db.smsbytime.day,
db.smsbytime.hour,
sum],
groupby=date_fields,
orderby=date_fields
)
Thank you
--
Massimiliano
--