1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-12-15 00:24:09 +01:00
fab-manager/app/models/trainings_availability.rb
2020-03-30 11:33:12 +02:00

20 lines
701 B
Ruby

# frozen_string_literal: true
# TrainingsAvailability is the relation table between a Training and an Availability.
# Is is used to schedule a training session, for members to be able to book it.
class TrainingsAvailability < ApplicationRecord
belongs_to :training
belongs_to :availability
after_destroy :cleanup_availability
# when the TrainingsAvailability is deleted (from Training destroy cascade), we delete the corresponding
# availability. We don't use 'dependent: destroy' as we need to prevent conflicts if the destroy came from
# the Availability destroy cascade.
def cleanup_availability
unless availability.destroying
availability.safe_destroy
end
end
end