У меня есть два класса: родительский и дочерний с
Ребенок:
belongs_to :parent
и
Родитель
has_many :children, :dependent => :destroy
Проблема в том, что я хочу проверить, что всегда присутствует хотя бы один дочерний элемент, поэтому у меня есть метод before_destroy в Child, который прерывает уничтожение, если он является единственным дочерним элементом, принадлежащим его родительскому объекту.
И, если я хочу уничтожить родителя, он вызовет обратный вызов before_destroy для каждого дочернего элемента, но когда есть один ребенок, он прервет уничтожение, поэтому родитель никогда не будет уничтожен.
Как я могу сказать ребенку вызвать обратный вызов before_destroy, только если он не уничтожается из-за его родителя?
Спасибо!