我一直在通过使用 Yesod 来重建我的网站来学习 Yesod。我开始使用由yesod init
. 此代码使用 Yesod 附带的身份验证框架,包括 Yesod.Auth.Email,它允许您通过提供电子邮件地址来创建帐户。
我对默认代码的问题是:它将用户标识符设置为他们的电子邮件地址。如果标识符将在网站上公开使用(例如,识别页面/博客上的评论员),那么您需要一些用户不介意显示的东西来识别他们。
理想情况下,我希望网站在提交电子邮件地址时或单击链接以验证帐户并输入密码时要求提供(唯一)公共标识符。问题是这似乎需要更改 Yesod 模块,因为那里定义了注册/密码表格。
我可以很容易地做出改变。但我真的不想继续分叉 Yesod 模块来让它们做我想让它们做的事情。是否有另一种方法可以使用现有的 yesod-auth 模块来做到这一点?完全有可能使用框架来完成,但如果是这样,一个小例子将不胜感激。