web2py post登录重定向

时间:2012-09-05 09:08:09

标签: redirect login web2py

我的web2py应用程序有一个可用的登录表单。

我不知道我改变了什么但是在登录后,应用程序返回了无效的函数default / user msg。

我正在使用auth.settings.controller =“user”重定向到正确的控制器。现在它不起作用。

应用程序应该返回它来自的页面。仅限登录用户

解决这个问题之后,我正在安装自己的SVN,但直到那时。 我真的不知道该怎么做

我正在使用auth.navbar()

我的auth在视图中是{{='auth'在globals()和                         auth.navbar(分隔符=('','|',''))}}             

我的用户控制器user.py是

def user():         form = auth()       return dict(form = form)

我的user.py模型是

if(request.controller =='user'或request.controller =='school'或request.controller =='timetable'和request.cookies.has_key('mycookie')):     response.generic_patterns = ['*'] if request.is_local else []     database = request.cookies ['mycookie']。value     baza = DAL('postgres:// postgres:postgres @ localhost /'+ database,migrate = True)     来自gluon.tools导入邮件     auth = Auth(baza)

auth.settings.logout_next=URL('school','index?school=' + database)


auth.settings.registration_requires_approval = True
#auth.settings.reset_password_requires_verification = True
#auth.settings.login_after_registration = False
auth.settings.register_onaccept=lambda form: mail.send(to=['vid.ogris@algit.si'],
      subject='web2py registration',
      # If reply_to is omitted, then mail.settings.sender is used
      reply_to='us@example.com',
      message='Kreiral se je nov uporabnik, ki ga je potrebno potrditi') 

auth.settings.expiration = 3600
auth.define_tables()

mail=Mail()
auth.settings.mailer=mail
mail.settings.server='smtp.gmail.com:587'
mail.settings.sender='xxx@gmail.com'
mail.settings.login='xxx@gmail.com:xxx'

#auth.settings.registration_requires_verification = True

auth.messages.registration_pending = u'Registracija je v postopku odobritve. Ko bo vaš račun potrjen boste prejeli e-mail.'
auth.messages.invalid_login = 'Nepravilno geslo'
auth.messages.invalid_user = 'Uporabnik ne obstaja'



auth.settings.controller="user"



## if you need to use OpenID, Facebook, MySpace, Twitter, Linkedin, etc.
## register with janrain.com, write your domain:api_key in private/janrain.key
from gluon.contrib.login_methods.rpx_account import use_janrain
use_janrain(auth,filename='private/janrain.key')

2 个答案:

答案 0 :(得分:1)

更改auth.settings.controller不起作用(需要更新本书)。相反,你必须这样做:

auth = Auth(baza, controller='user')

此外,而不是:

URL('school','index?school=' + database)

你应该这样做:

URL('school','index', vars=dict(schools=database))

答案 1 :(得分:1)

有时html中的注释不仅仅是注释:)我删除了一行包含auth.register()的内容,即使我注释了它,现在它还可以使用

相关问题