Sha256: ff3b52ef350ef43e6a04f3d90f8bb55f690b1f9c6c09bc34dd76c2b541b68198

Contents?: true

Size: 726 Bytes

Versions: 4

Compression:

Stored size: 726 Bytes

Contents

module Gaku
  class ClassGroupEnrollment < ActiveRecord::Base

    belongs_to :class_group
    belongs_to :student
    has_many :school_roles, as: :school_rolable

    validates :class_group_id, presence: true

    validates :student_id,
              presence: true,
              uniqueness: {
                            scope: :class_group_id,
                            message: I18n.t(:'class_group.already_enrolled')
                          }

    after_save :save_student_class_and_number

    def class_and_number
      "#{class_group} - ##{seat_number}"
    end

    private

    def save_student_class_and_number
      student.update_attribute(:class_and_number, class_and_number) if student
    end


  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
gaku_core-0.0.3 app/models/gaku/class_group_enrollment.rb
gaku-0.0.3 core/app/models/gaku/class_group_enrollment.rb
gaku-0.0.2 core/app/models/gaku/class_group_enrollment.rb
gaku_core-0.0.2 app/models/gaku/class_group_enrollment.rb