Добрый вечер. Может ли кто-нибудь обьяснить, как правильно удалять релайшоны в монгусе. Я имею ввиду, если скажем есть блог, у него есть комментарии ( через виртуальную схему ). Нужно, чтобы при удалении блога, удалялись и его комменты.
Я слышал про хуки монгуса, на пост делете, окей и даже сам хук работает. Внутри хука можно получить саму модель коммента и вызвать на нем метод remove по айдишке поста ( так они связаны в схеме ). Метод отрабатывает, а комменты в базе остаються. Никто не знает, почему так? И вообще правильный ли такой подход? ( меня смущает, что если скажем база упадет после удаления поста, то даже если бы удалялись комменты, они бы всё равно остались в базе ). Заранее всем спасибо за ответы.
в 4-й версии монги завезут транзакции, пока от падения во время частичного удаления можно только с помощью двойных перепроверок сделать, но это геморно.
Включи
mongoose.set('debug', true);
и посмотри уходит ли в хуке запрос на удаление.
Возможно, у тебя просто safe-delete какой-то то есть он ставит просто флаги delete, а не физическое удаление.