Hi,
Using the new auth system from gluon/tools.py I found a problem.
My app is like this:
model/db.py:
...
auth = MyAuth(globals(), T, db
auth.settings.lock_keys = False
auth.settings.login_next = URL(r=request, c='default', f='index')
auth.settings.login_url = URL(r=request, c='control', f='login')
auth.define_tables()
controller/default:
@auth.requires_membership(TEACHERSGROUP)
def index():
return dict(message=T('Hello World')
views/default/index.html
... html code here ...
vews/control/login.html
... vhtml code here ....
The problem is: when I access default/index without loggedin I'm
redirected to control/login, this is fine because I set
auth.settings.login_url todo do this, but, after I sucessfully logged
in I'm not redirect to default/index and stay in the login form.
Web2py is ignoring my auth.settings.login_next = URL(r=request,
c='default', f='index').
After I changed the login code in gluon/tools from:
...
if not request.vars._next:
request.vars._next = request.env.http_referer or ''
if next == DEFAULT:
next = request.vars._next or self.settings.login_next
if onvalidation == DEFAULT:
...
to this:
...
if not request.vars._next:
request.vars._next = request.env.http_referer or ''
if next == DEFAULT:
next = self.settings.login_next or request.vars._next # I
CHANGED THIS LINE
if onvalidation == DEFAULT:
...
The login behavior works correct, the user is redirect to /defeault/
index after successfuly login. Is this a bug in the auth code or I was
missing some point here ?
thanks,
Abner
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---