So what is the problem? It sounds like it is working as expected -- with the "not session.visitor_name" condition, you get a redirect if no name has previously been entered on the first page, correct? Are you observing something different? Note, once you have visited the first page, you can then visit the second page as many times as you like (because the "visitor_name" remains in the session until cleared). If you only want to allow a single visit to the second page immediately from the first page, then you need to clear the session variable after rendering it in the second page view.
Also, note that the "not request.function == 'first'" condition isn't actually necessary if that code is inside the second function -- it would only be necessary if that code were at the top level of the controller (i.e., outside of any function). Anthony On Tuesday, November 18, 2014 1:25:22 AM UTC-5, T.R.Rajkumar wrote: > > I am able to visit the second page directly without visiting the first > page if I have only the request.function. If I add the session var > condition then it restricts. > > On Saturday, November 15, 2014 3:28:15 PM UTC+5:30, T.R.Rajkumar wrote: >> >> In book chapter 3 overview the following is given to restrict access to >> second page. >> >> if not request.function=='first' and not session.visitor_name: >> redirect(URL('first')) >> >> But if I print request.function it says 'second'. >> How to restrict access to second page only from first page? >> >> >> -- 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.