0

我刚刚完成了Ruby on Rails教程 (Michael Hartl)。

在上一章的最后,他推荐了一些对示例应用程序的扩展。这些扩展之一是"Signup confirmation"他总结如下:

“除了电子邮件正则表达式,示例应用程序目前无法验证用户电子邮件地址的有效性。添加电子邮件地址验证步骤以确认用户的注册。新功能应创建处于非活动状态的用户,通过电子邮件发送用户激活 URI,然后在 URI 被命中时将用户更改为活动状态。您可能需要阅读 Rails 中的状态机以帮助您进行非活动/活动转换。

问题:

有没有一种常见的“Rails 方式”来做到这一点?我做了很多搜索,但没有找到明确的解决方案。此外,我发现的任何潜在解决方案都没有提到状态机。然而,既然迈克尔哈特尔提到了它,我觉得我应该考虑他的建议。

谢谢!

4

1 回答 1

0

有人可能会想出更好的答案,但为什么不给 User 模型一个布尔激活字段,一个激活令牌字符串,发送一封带有它的 url 的电子邮件,然后通过该令牌进行识别并激活用户。激活成员操作应该这样做。

当然人们可能会说这不是 REST,但有时在某些情况下创建自己的资源有点过于广泛。

我认为在 railscasts 上有一个关于 statemashines 的插曲。

于 2013-04-03T05:09:53.313 回答