2012-04-25 78 views
0

我见过的所有身份验证插件都实现了单页用户注册 - 用户输入他所有的字段,然后立即提交。因此,设计认证。使用Devise身份验证的用户注册服务器端向导

发布现在我们有要求做多页面注册向导。

如果我们没有要求在最初的页面上创建用户,然后在其他页面上应该提供更多和更多信息以及在每个页面之后进行保存,那么使用JQuery实现它并将其发布到最后一个向导页面上将很容易页面提交。

你会如何建议在使用Devise认证的项目中实现这一点?这与用户的激活过程(我是指发送帐户确认电子邮件)相对应?

回答

2

多步表单与您使用的任何身份验证插件无关。这取决于你如何整合它。

由于页面之间有多个请求,复杂性变得更加困难。
- 如何保存数据?
- 何时创建数据库模型?
- 我应该使用隐藏字段来传递页面中的值还是应该将它们粘在会话中?

这些都是在某个时候弹出的所有问题,您应该尝试事先将它们整理出来。

在初始请求中创建模型有一个很大的缺点,那就是最终可能会生成一个虚假的数据库条目,显然你不希望这样做。

您可以创建一个临时模型,用于收集用户数据,最后创建真正的用户模型,通过设计,基于此tmp模型并在完成时删除它。

瑞安贝茨在他的一个关于多步骤形式的屏幕录像中谈话。 http://railscasts.com/episodes/217-multistep-forms

对您而言可能是感兴趣。

+0

我决定使用不受Devise保护的独立注册控制器。 – Paul 2012-04-26 11:24:47

相关问题