scinote-web/app/models/protocol_protocol_keyword.rb
2017-06-28 15:21:32 +02:00

25 lines
717 B
Ruby

class ProtocolProtocolKeyword < ApplicationRecord
after_create :increment_protocols_count
after_destroy :decrement_protocols_count
validates :protocol, presence: true
validates :protocol_keyword, presence: true
belongs_to :protocol, inverse_of: :protocol_protocol_keywords, optional: true
belongs_to :protocol_keyword,
inverse_of: :protocol_protocol_keywords,
optional: true
private
def increment_protocols_count
self.protocol_keyword.increment!(:nr_of_protocols)
end
def decrement_protocols_count
self.protocol_keyword.decrement!(:nr_of_protocols)
if self.protocol_keyword.nr_of_protocols == 0 then
self.protocol_keyword.destroy
end
end
end