首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何扩展Turbogers2.1登录功能

如何扩展Turbogers2.1登录功能
EN

Stack Overflow用户
提问于 2009-12-25 08:02:17
回答 1查看 1.2K关注 0票数 4

我正在使用Turbogers2.1和repoze.who/what,并且很难弄清楚如何扩展基本的身份验证功能。我基本上是试图要求用户通过电子邮件链接激活他们的帐户,然后他们才能登录。如果他们试图登录而不激活他们的帐户,我想显示一个适当的错误信息。默认Turbogears功能只显示所有错误的一条消息。

我创建了自己的身份验证插件,运行良好。它将不允许用户登录,如果他们没有激活他们的帐户。但是,当我尝试创建表单并显示自定义错误消息时,问题就出现了。我该怎么做呢?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2010-01-29 00:16:54

如果不看到您的实际代码,就不可能给出一个非常好的答案,但是有一个想法:

  1. 创建一个repoze.who元数据提供程序插件,该插件“乱写”一些指示用户是否已激活其帐户的内容。
  2. 创建一个“挑战者决定器”插件,它既可以查看用户是否经过身份验证,也可以查看用户是否激活了自己的帐户(通过检查使用元数据插件设置的元数据)。
  3. 创建一个挑战者插件来发回实际的挑战。如果未对用户进行身份验证,则发送一个登录表单/提示。如果用户经过身份验证(您的身份验证插件成功),但他们没有激活他们的帐户,请发送一个自定义错误页面,要求用户激活他们的帐户。

在任何情况下,请仔细阅读此页

您也可以在自定义谓词中使用repoze.what,但是您可能需要在代码中洒上装饰器,检查它们的帐户是否已在每个控制器/方法上被激活。丑陋。

希望这能有所帮助!

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1960747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档