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

-- 



Reply via email to