forgeplus/app/models/user_extension.rb

23 lines
637 B
Ruby

class UserExtension < ApplicationRecord
# identity 0: 教师教授 1: 学生, 2: 专业人士, 3: 开发者
enum identity: { teacher: 0, student: 1, professional: 2, developer: 3, enterprise: 4, unselect: -1 }
belongs_to :user, touch: true
belongs_to :school, optional: true
belongs_to :department, optional: true
before_save :set_laboratory_school
def identity_text
I18n.t("user.identity.#{identity}")
end
private
def set_laboratory_school
return unless new_record?
self.school_id = Laboratory.current.school_id if school_id.blank? && !Laboratory.current.main_site?
end
end