isn't there an option on grid to not show the ID? i know that grid uses the ID for allowing you to click links to edit and such...
On Tuesday, November 13, 2012 11:15:17 PM UTC-8, Johann Spies wrote: > > The following code: > > fields = [db.rjoernaal.so, db.rpublisher.pu, db.rpublisher.pi] > query = ((db.rjoernaal.uuid == db.rpub_rj.rj_id) & > (db.rpub_rj.rpub_id == db.rpublisher.id)) > > data = SQLTABLE(db(query).select(db.rjoernaal.so, db.rpublisher.pu, db > .rpublisher.pi, > groupby = db.rjoernaal.so | db.rpublisher > .pu | db.rpublisher.pi)) > > produces the following SQL > > SELECT rjoernaal.so, rpublisher.pu, rpublisher.pi > FROM rpublisher, rpub_rj, rjoernaal > WHERE ((rjoernaal.uuid = rpub_rj.rj_id) AND (rpub_rj.rpub_id = rpublisher. > id)) > GROUP BY rjoernaal.so, rpublisher.pu, rpublisher.pi; > > which is correct. > > But when I replace the 'data = ' section in the above code to use > > > data = SQLFORM.grid(query, > fields = fields, > maxtextlength=120, > editable = False, > deletable = False, > groupby = db.rjoernaal.so | db.rpublisher.pu | db. > rpublisher.pi) > > > > The result is: > > SELECT rjoernaal.so, rpublisher.pu, rpublisher.pi, rpublisher.id > FROM rpublisher, rpub_rj, rjoernaal > WHERE ((rjoernaal.uuid = rpub_rj.rj_id) AND (rpub_rj.rpub_id = rpublisher. > id)) > GROUP BY rjoernaal.so, rpublisher.pu, rpublisher.pi; > > Note the addition of 'rpublisher.id'. > > This screws up the effect of the groupby-clause and produces an invalid > query on postgresql. > > Regards > Johann > > > > --

