在plone网站上成功注册后立即登录

时间:2012-01-13 09:54:10

标签: authentication plone zope z3c.form

我有一个自定义注册BrowserView,你必须扩展一些userdata(z3c.form包含一些字段,包括密码)。成功保存这些数据后,我希望用户自动登录并重定向到站点中的其他页面。

提前感谢提示

2 个答案:

答案 0 :(得分:5)

所以这是我的工作解决方案(感谢指向正确方向的mikko):

  1. 在PAS中验证您的注册凭据

    member = portal.acl_users.authenticate(username, password, portal.REQUEST)
    
  2. 对于重定向,必须设置身份验证cookie。您可以使用“updateCredentials”执行此操作(请参阅pas / plugins / cookie_handler)

    if member:
        portal.acl_users.updateCredentials(portal.REQUEST, portal.REQUEST.RESPONSE, username, password)
    
  3. 重定向到下一页

    portal.REQUEST.RESPONSE.redirect(url)
    

答案 1 :(得分:0)

如果要扩展新成员的userdata,并在注册表单中添加新字段,最好扩展提供默认用户数据模式的实用程序,并以无缝挂接到现有的注册机制。

有一个示例产品 collective.examples.userdata ,您可以使用它并为此目的进行扩展。它还有很好的文档,可以向您解释所有必要的步骤。

http://plone.org/products/collective.examples.userdata