В моем проекте скидка принадлежит многим предприятиям и принадлежит им. У меня есть обратный вызов ассоциации. правило, что скидка не может удалить ее последний бизнес (чтобы поддерживать, что всегда есть бизнес для каждой скидки):
has_and_belongs_to_many :businesses,
before_remove: :check_count,
def check_count
raise 'Cannot remove latest business!' if businesses.count == 1
end
Однако я понял, что не смогу удалить скидки. Поскольку, когда я делаю Discount .destroy
, я думаю, он попытается удалить предприятия, и со временем вызовет ошибку.
Так есть ли способ обойти это, например, какой-нибудь : except
как в контроллерах?