У меня есть модель пользователя.
Пользователи могут иметь 1 из 3 ролей: роль1, роль2, роль3. Это представлено столбцом «роль» в пользовательской модели.
Каждая роль имеет уникальный профиль. role1_profile, role2_profile, role3_profile. Каждый * _profile - это модель.
Как мне представить эту необязательную ассоциацию в Rails?
Я пробовал это двумя разными способами:
class User < ActiveRecord::Base
#FIRST WAY
if current_user.role == 'role1' then has_one :role1_profile end
#SECOND WAY
has_one :role1_profile, :conditions => ['user.role = ?', 'role1']
end
Но это не работает. Как правильно это сделать?