ИМХО: Делаешь метод send_mail_before_save() и добавляешь его в сейв модели, самое явное из явных же.
Тут и джун увидит поймет. А вот сигнал не явно и лежит отдельно. А если таких действий 2 или 3 то как сигнал выглядеть будет? На каждое действие сигнал?
Ну смотри, есть приложение "юзеры", есть приложение "корзины", в корзине оформили заказ, а уведомление летит к свободному менеджеру из "юзеров". Имеет смысл эту логику писать в юзерах, а не в корзинах