2010-10-04 14 views
1

Je passe à Typus parce que je préfère son interface utilisateur sur ActiveScaffold et j'aime la façon dont vous pouvez définir des rôles pour la section admin. Nous avons besoin de ça.Utilisez Authlogic avec Typus

Cependant, où ActiveScaffold a fonctionné parfaitement avec Authlogic, Typus ne fonctionne pas. Je voudrais combiner les deux de toute façon, mais je n'arrive pas à trouver comment. Typus a un cryptage de mot de passe très basique, mais je ne peux pas écrire un crypto_provider pour cela, car cela dépend d'un cryptage Sha1 très simple du sel et du mot de passe. Authlogic ne supporte pas cela, car il n'envoie pas le mot de passe réel.

Je détesterais si nous devions utiliser deux modèles d'utilisateur pour le front et le backend. Je n'ai pas besoin d'Authlogic pour être la méthode d'authentification pour Typus, mais ils devraient au moins pouvoir comparer le mot de passe avec celui crypté.

Y at-il quelqu'un là-bas qui a travaillé sur ce problème?

Merci.

Répondre

1

Je ne suis pas entièrement satisfait, mais je pense avoir trouvé une réponse à ma propre question.

J'ai laissé Typus créer le AdminUser, a ajouté un user_id à lui et a ajouté cette méthode et je l'appelle dans un 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 

Cela semble faire l'affaire pour moi. J'adorerais le faire différemment, mais ça marche pour le moment.