Две пользовательские модели или только одна? - PullRequest
0 голосов
/ 13 сентября 2009

Я работаю над новым проектом и по какой-то причине решил создать две отдельные пользовательские модели / контроллеры / сессии с использованием authologic.

Пользователи имеют совершенно разные роли на сайте, но модели в основном одинаковы. Разница лишь во взглядах.

Теперь мне интересно, должен ли я просто создать одну модель и добавить поле «Роль». Затем, после того, как они войдут в систему, выясните, какую роль они выполняют, а затем выведите их на новый контроллер в зависимости от их роли.

Итак, я думаю, у меня вопрос, есть ли причина иметь две пользовательские модели? Существуют ли руководства по ролям пользователей с authlogic?

Спасибо!

1 Ответ

3 голосов
/ 13 сентября 2009

Поскольку Authlogic ориентирован исключительно на аутентификацию, очень легко добавить разрешения на основе ролей. Мы сделали это довольно просто, имея единственную модель User, добавив модель Role, а затем модель UserRole, которая связывала две модели, что позволяло одному и тому же пользователю иметь несколько ролей, а также для нескольких пользователей одинаковую роль.

С точки зрения Authlogic, это не волнует. Он только дает вам знать, что пользователь прошел аутентификацию, поэтому любые разрешения, которые вы добавляете к ним, принадлежат вам.

В RoR доступно множество статей о разрешениях на основе ролей, поэтому просто отправьте их в Google, и я уверен, что вы найдете несколько подходящих для ваших нужд.

Из того, что я нашел, простота очень поможет вашей жизни: -)

...