У меня есть класс User и Contact, где Contact является подклассом User. Оба класса хранятся в таблице пользователей.
Мои контакты могут иметь или не иметь адрес электронной почты, в то время как для моих пользователей требуется адрес электронной почты (у меня есть validates_presence_of :email
в определении модели пользователя).
Мое рассуждение состоит в том, что Контакты вводятся пользователями и позже могут стать Пользователями, когда они заявляют о своем профиле.
- Прежде всего, нормально ли определять мои пользователей и контактов, как я это сделал?
- Во-вторых, как пропустить
validate_presence_of email
проверка в моей модели контактов?
(Я на рельсах 2.3.8)
Спасибо!
UPDATE:
-
Кажется, что одностраничное наследование чтобы сделать то, что мне нужно
-
правильный способ пропустить проверку для наличие электронной почты для моего контакта таблица выглядит следующим образом:
validates_presence_of :email, :unless => Proc.new {|user| user.type == "Contact"}