Well... after taking time out to write the entire story... my mistake. In define_tables > Field, I assigned it (a long time ago) as "string" instead of "integer". So the comparison was switched around, because it was comparing a single digit, e.g. 5, to a double digit number, like 15. It's all fixed per the web2py book when I enforced "int()". Grrrrr.....
On Thursday, January 12, 2017 at 11:35:12 PM UTC+8, lyn2py wrote: > > Hi guys, I just wanted to confirm this. > > The web2py book (link = > http://www.web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#callbacks-on-record-insert-delete-and-update) > > says: > "The return values of these callback should be None or False. If any of > the _before_* callback returns a True value it will abort the actual > insert/update/delete operation." > > But my experience differs, I am comparing the value in db ("query set") > and the value I am about to insert ("fields"). > CRITERION: If the "query set" is a smaller value, abort the update > operation. > So, per the instruction in the web2py book, I made it like so: > db.table._before_update.append(lambda s,f: qs(number)<f['number']) > > which means the "query set" is smaller than the "fields", then, it's TRUE, > so, abort update. > > But it didn't work until I switched the operator sign to make the > statement FALSE, like so: > db.table._before_update.append(lambda s,f: qs(number)>f['number']) > > which means the "query set" is NOT smaller than the "fields". It would > abort update. > > Am I confused about something or does the web2py book need an edit/update? > > Thank you for reading! > -- 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/d/optout.

