Если при изменении статуса заказа надо отправить оповещение пользователям, то save_model в ModelAdmin это не самое лучше место, вернее даже худшее из приходяших на ум.
Статус заказа может быть изменен и в других местах ... (до уровня тригеров в БД опускаться не будем).
Используйте post_save сигнал. Только неудобство, что надо будет вручную определять изменился ли статус, на тостере было про это.
Если уж хотите в save_model, то учитывайте что Order изменится в БД только когда транзакция закомитится (а вы уверены что у вас транзакции нет?) Соответственно:
from django.db import connection
connection.on_commit(lambda: send_order_email(obj.pk))
И в send_order_email зачитывайте заказ и БД ...
Если хотите ускорить работу send_order_email в некоторых случаях и иметь возможность передать ему уже загруженный order с prefetch_related например, то сделайте просто:
def send_order_email(order):
if not isinstance(order, Order):
order = Order.objects.get(pk=order)