12345678910111213141516171819202122232425262728293031323334353637 |
- class User < ApplicationRecord
-
-
-
-
-
-
-
-
- has_secure_password
- belongs_to :person
- validates :person, presence: true
- validates :email, uniqueness: true
- before_validation :email_same_as_person
-
-
- def logout_all_sessions!
- sessions = Session.where(user: self)
- sessions.update_all(active: false)
- end
- private
-
-
- def email_same_as_person
- if self.person and self.email != self.person.email
- errors.add(:email, I18n.t('authentication.user_person_mail_mismatch'))
- end
- end
- end
|