【问题标题】:Authlogic with facebook connectAuthlogic 与 facebook 连接
【发布时间】:2010-08-06 17:05:02
【问题描述】:

我已成功将 facebook connect 与 authlogic 集成到我的 rails 应用程序中。

问题是,如果尝试更新 facebook 用户的个人资料详细信息,则会出现密码字段不能为空的验证错误。

为了解决上述问题,我在 User 模型中添加了以下内容。

  before_validation :update_authlogic_config

  def update_authlogic_config
    validate_password_field = !facebook_user?
    validate_email_field = !facebook_user?
  end

  def facebook_user?
    !facebook_uid.blank?
  end

添加此代码后,没有验证错误,但仍然验证失败。

user.valid? retruns false
user.errors.size return 0

如果我在控制器中这样做

@user.update_attributes!(params[:user])

引发的异常是

验证失败:

没有任何具体错误。

【问题讨论】:

    标签: ruby-on-rails facebook authlogic


    【解决方案1】:

    我发现了一个 hack。

    用一些值填充 facebook 用户的密码字段。无论如何,这个值不会被使用,所以它可以工作。

    def before_connect(fb_user)
      self.crypted_password = "test"
      self.password_salt = "test_salt"
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-17
      相关资源
      最近更新 更多