How to manage session.flash=... with form.process()? Richard
On Fri, Feb 17, 2012 at 1:31 PM, Richard Vézina <ml.richard.vez...@gmail.com > wrote: > Thanks Anthony! > > The book is mute about that... > > Richard > > On Fri, Feb 17, 2012 at 1:27 PM, Anthony <abasta...@gmail.com> wrote: > >> You can test if the record was deleted by checking for the >> "delete_this_record" variable: >> >> if form.vars.delete_this_record: >> >> Also, instead of handling the logic after form.accepts(), you could use >> form.process(..., onsuccess=some_function) and have the some_function() >> callback check for the delete and do the redirect. >> >> Anthony >> >> >> On Friday, February 17, 2012 12:43:37 PM UTC-5, Richard wrote: >>> >>> Hello, >>> >>> When user submit, I redirect him on a read form, but I get in trouble >>> when for example user has delete a record with update form. >>> >>> I solve it like this when use SQLFORM() : >>> >>> if form.accepts(request.vars, session): >>> session.flash = T('form accepted') >>> if len(db(db.table1.id == >>> form.vars.id).select(db.**table1.id <http://db.table1.id>)) == 1: >>> redirect(URL(r=request, >>> f='read',args=(request.args(0)**,form.vars.id))) >>> else: >>> redirect(URL(r=request, >>> f='select',args=(request.args(**0)))) >>> >>> But I notice that CRUD has delete_next= option... Could it be add to >>> SQLFORM somehow? Book seems to be silent on this scenario... Should I >>> use form.accept().accepted. It has a next methode, but I don't think >>> it allows to manage conditional redirection... >>> >>> Thanks >>> >>> Richard >> >> >