Hi! I'm actually using V2.0.9 and the error is still active. Is it fixed in 2.1.0?
Thanks, Gerd Am Donnerstag, 13. September 2012 20:24:01 UTC+2 schrieb Mandar Vaze: > > For now, I'm calling db.commit on my own ondelete function > > def my_ondelete_function(table, record_id): > print "Deleting %s from %s" % (record_id, table) > > db(table[table._id.name]==record_id).delete() > > db.commit() > > so technically same delete() gets called twice - first in my ondelete > function (listed above) and then immediately in gluon/sqlhtml.py > I know it is wrong/incorrect, but seems to be working for me. > > Waiting for suggestions/comments from the group. > > -Mandar > > On Thursday, September 13, 2012 11:46:09 PM UTC+5:30, Mandar Vaze wrote: >> >> I'm using version 2.0.7 and seeing the same problem. >> I looked at the gluon/sqlhtml.py and it doesn't look like problem is >> specific to custom query (Although I too have custom query passed to the >> sqlform.grid) >> >> elif deletable and len(request.args)>2 and >> request.args[-3]=='delete': >> table = db[request.args[-2]] >> >> if ondelete: >> >> ondelete(table,request.args[-1]) >> >> ret = db(table[table._id.name]==request.args[-1]).delete() >> >> db.commit() # If I add this, the record is deleted from DB too >> return ret >> >> I confirmed this by adding "db.commit()" just prior to returning. Without >> this line, the record is removed from the table - but not form DB. So next >> time we refresh and re-render the table, the deleted record re-appears >> >> BTW, I have another function for bulk_delete (User selects from checkbox, >> and deleted selected records in one go) I am not calling db.commit() there >> explicitly but the records are indeed deleted from DB. >> >> What is going on ? >> >> -Mandar >> >> On Tuesday, June 12, 2012 6:14:38 PM UTC+5:30, rahulserver wrote: >>> >>> I have the following sqlform.grid: >>> COMMITMENTS=SQLFORM.grid((db.Commitments.Account==session.id >>> ),user_signature=False) >>> >>> When I try to edit any row of the form, the edit is not committing. Is >>> it that the sqlform.grid does not allow edits for query arguments? >>> >> --