0

我已经学习 Rails 3 个月了。尝试将 Facebook 身份验证添加到 Hartl 教程示例应用程序克隆。

我仍然希望允许用户创建不带 FB 的帐户……尽管我愿意接受这方面的建议。我希望 FB 登录立即发生,而无需用户输入密码。

我一直在使用相关的 Railscasts(#235-236 等),但 Ryan 使用设计,我不想。事实上,我发现他的解决方案的复杂性是从头开始进行身份验证的一个很好的论据。

我当前的错误(在没有验证的情况下保存用户后)是“新记录中缺少密码摘要”,似乎是由this引起的。我有哪些选择?

  1. 我很想添加一个随机的密码摘要,但对此感觉有点脏。我是不是该?
  2. 我应该重写 sign_in 函数吗?究竟需要在其中发生什么?也许我没有完全理解 Hartl 的 remember_token 的生命周期......
  3. 还有什么我想念的吗?

我的代码在Github上。

谢谢!

4

1 回答 1

0

has_secure_password模块自动添加此验证:validates_presence_of :password_digest。而且,没有办法绕过这个验证。

我能想到的一种解决方案是回退到以前版本的 rails 教程中解释的安全密码理论(http://ruby.railstutorial.org/chapters/modeling-and-viewing-users-two?version=3.0# sec:secure_passwords ) 并滚动您的身份验证机制,而不是使用 has_secure_password。

于 2013-08-28T05:10:03.677 回答