Использование Authlogic с моделью User, которая не называется «User» - PullRequest
0 голосов
/ 14 января 2010

У меня есть приложение, которое отслеживает людей, но, возможно, все эти пользователи являются пользователями продукта. Я бы предпочел модель под названием Person (а не User), но не могу понять, как указать Authlogic, что я использую Person вместо User.

Я уверен, что где-то очевидно, что я просто не вижу, но я уже часами проливаю вещи и сдаюсь. : -)

Ответы [ 3 ]

2 голосов
/ 20 января 2012

Вам просто нужно использовать authenticate_with метод внутри вашего сеансового класса, например:

class CaseWorker < ActiveRecord::Base 
 acts_as_authentic do |c| 
   c.session_class = 'Session' 
 end 
end 

class Session < Authlogic::Session::Base 
  authenticate_with CaseWorker 
end 

Приведенный выше код был взят из этого обсуждения .

2 голосов
/ 14 января 2010

Я думаю, вы можете просто добавить acts_as_authentic в модель Person, и все должно работать просто отлично. Если вы сталкиваетесь с тем, что в документации написано User, просто измените их на Person

1 голос
/ 24 апреля 2010

Имя класса модели выводится из имени класса сеанса, который вы производите от Authlogic :: Session :: Base.

Класс UserSession

класс PersonSession

По крайней мере, это то, что сработало для меня после часа копания в плохой документации Authlogic.

...