Как я могу получить доступ к «ролям» в «представлениях» в моем приложении Rails?

В приложении Rails 3, которое я создаю, чтобы помочь мне изучить Ruby on (и) Rails, меня немного смущают таблицы «role / roles_users / users».

У меня есть Devise и CanCan, и я хочу "получить доступ" к этим ролям.

Сейчас у меня три роли:

admin
персонал
клиент

В базе данных у меня есть эти таблицы (и несколько других):

роли (таблица)
id => 1 || name => admin
id => 2 || name => сотрудники
id => 3 || name => client

role_users (таблица)
role_id => 1 || user_id => 1
role_id => 2 || user_id => 2
role_id => 3 || user_id => 3

пользователей (таблица)
user1
user2
user3

Итак, сейчас у меня три пользователя. Пользователь № 1 - «администратор», пользователь № 2 - «персонал», а пользователь № 3 - «клиент».

В «views / admin / users / show.html.erb» я хотел бы отобразить каждого пользователя "роль", а затем разрешить администратору изменить ее. Как только я смогу отобразить роль, я думаю, что смогу настроить ее так, чтобы администратор мог ее изменить.

Дело в том ... Я немного не понимаю, какую переменную / имя я могу использовать для отображения каждой роль пользователя. Я могу легко получить доступ к таким вещам, как user.first_name или user.address, но я не уверен, как я могу получить доступ к чему-то вроде user.role (который не работает).

Есть предложения?

Ура!

Сэм

1
задан user169320 21 September 2010 в 20:31
поделиться