将Authlogic与Typus一起使用

时间:2010-10-04 10:39:05

标签: ruby-on-rails passwords authlogic

我正在切换到Typus,因为我喜欢它的UI而不是ActiveScaffold,我喜欢你可以为管理部分设置角色的方式。我们需要那个。

然而,在ActiveScaffold与Authlogic完美配合的情况下,Typus没有。无论如何,我想把两者结合起来,但似乎无法弄清楚如何。 Typus有非常基本的密码加密,但我不能为它写一个crypto_provider,因为它依赖于一个非常简单的Sha1加密盐和密码。 Authlogic不支持,因为它不会发送实际密码。

如果我们必须为前端和后端使用两个用户模型,我会讨厌它。我不需要Authlogic作为Typus的身份验证方法,但他们至少应该能够将密码与加密密码进行比较。

有没有人解决过这个问题?

谢谢。

1 个答案:

答案 0 :(得分:1)

我对此并不十分满意,但我认为我找到了自己问题的答案。

我让Typus创建了AdminUser,为它添加了一个user_id并将此方法添加到它中,我在before_save中调用它:

  def sync_user
    self.user ||= User.find_by_email(self.email)
    if user = self.user
      user.email = self.email
      user.password = self.password
      user.password_confirmation = self.password_confirmation
      user.save
    end
  end

这似乎对我有用。我喜欢以不同的方式做到这一点,但它现在有效。