http://imgur.com/Rs2YVeq
Hi Massimo and thank you for the reply. A couple of questions 1) What are the associated overheads of SQLFORM? 2) I tried the code you suggested but unfortunately I have the same behavior. If I use return 'NOTOK' if r.errors else str(r.id) I get nothing as a response, see here http://i.imgur.com/Rs2YVeq If, on the other hand, I use return 'NOTOK' if r.errors else str("OK") I get the response correctly, see here http://i.imgur.com/Svk8ESQ 3) If I use the JSON return as you suggest, could I include the row.id as well? Thank you On Saturday, August 2, 2014 8:35:37 AM UTC+3, Massimo Di Pierro wrote: > > You should not do this. If this is meant to be called via ajax it is not a > good idea to use a SQLFORM because of the associated overhead. Instead try: > > def addsample(): > if request.env.request_method == 'POST': > r = db.sample.validate_and_insert(**request.post_vars) > return 'NOTOK' if r.errors else str(r.id) > else: raise HTTP(400) > > even better you should return JSON objects (for example return > response.json(r.errors)). > > On Friday, 1 August 2014 19:08:31 UTC-5, desta wrote: >> >> Hello everyone, >> >> I have this controller which is called through AJAX and submits data to >> the form. The data is successfully transmitted but when I try to return the >> submitted row id the controller returns nothing. >> >> def addsample(): >> formSample = SQLFORM(db.sample, _class='form-horizontal', formstyle= >> 'bootstrap3', _id='sampleForm'); >> if formSample.accepts(request, hideerror=True, formname=None): >> return str((formSample.vars.id)) >> elif formSample.errors: >> return str("NOTOK") >> >> I also tried returning a number (as a string) but it didn't work: >> return str(15) >> >> However, if I return "OK" it works: >> return str("OK") >> >> What am I missing here? >> >> Thank you! >> > -- 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.

