More specifically, when you provide the "next" argument to SQLFORM.process(), it ultimately calls redirect(), which raises an HTTP exception. If you put the .process() call inside a try/except, that HTTP exception will get caught, and in your case, you are then ignoring it. We should probably spell this out more clearly in the book.
You could instead do something like: except Exception as e: if isinstance(e, HTTP): raise e # re-raise the exception in case of a redirect redirect(URL('index')) But generally it is much better to catch specific exceptions. Anthony On Tuesday, December 23, 2014 2:44:57 PM UTC-5, Niphlod wrote: > > are you aware that in web2py any HTTP is a subclass of exception ? Never, > never, never use an exception without specifying what exception your code > may raise. > > On Tuesday, December 23, 2014 7:34:45 PM UTC+1, Mark Billion wrote: >> >> Why are you using an except without specifying the exception? Trying to >> catch all possible exceptions. >> >> On Tuesday, December 23, 2014 1:31:21 PM UTC-5, Leonel Câmara wrote: >>> >>> Why are you using an except without specifying the exception? Anyway >>> just do this: >>> >>> @auth.requires_login() >>> def cli_add(): >>> db.client.au_usr.default = auth.user_id >>> form = SQLFORM(db.client, fields = ['d_fn', 'd_ln', 'd_aka', >>> 'd_ss'], labels = {'d_ss': 'Social Security', 'd_aka': 'Any Aliases', >>> 'd_65': 'Older than 65'}).process(next=URL('clients')) >>> return dict(form=form) >>> >>> -- 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 web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.