Sha256: d8438fa77d48c8b7a5811fa93167bd9aa3896cf7e97cfc3107773f08eb590656

Contents?: true

Size: 621 Bytes

Versions: 7

Compression:

Stored size: 621 Bytes

Contents

# <%= autogenerated_model_warning %>

class Section < ApplicationRecord
  include CanvasSync::ApiSyncable

  validates :canvas_id, uniqueness: true, presence: true
  belongs_to :course, primary_key: :canvas_id, foreign_key: :canvas_course_id, optional: true
  has_many :enrollments, primary_key: :canvas_id, foreign_key: :canvas_section_id

  api_syncable({
    sis_id: :sis_section_id,
    canvas_course_id: :course_id,
    canvas_nonxlist_course_id: :nonxlist_course_id,
    name: :name,
    start_at: :start_at,
    end_at: :end_at,
    workflow_state: ->(r){ 'active' },
  }, -> (api) { api.section(canvas_id) })
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
canvas_sync-0.11.1 lib/canvas_sync/generators/templates/models/section.rb
canvas_sync-0.12.0 lib/canvas_sync/generators/templates/models/section.rb
canvas_sync-0.11.0 lib/canvas_sync/generators/templates/models/section.rb
canvas_sync-0.10.6 lib/canvas_sync/generators/templates/models/section.rb
canvas_sync-0.10.5 lib/canvas_sync/generators/templates/models/section.rb
canvas_sync-0.10.4 lib/canvas_sync/generators/templates/models/section.rb
canvas_sync-0.10.3 lib/canvas_sync/generators/templates/models/section.rb