Jeśli robisz to od administratora, musisz zastąpić metodę save(), ale może to być zapis składowania AdminModel ... nie musi być pełnym składnikiem modelu.
Jednak jeśli wysyłając do dużo maili, lepszym rozwiązaniem byłoby zainstalowanie django-mailer co stawia maili w kolejce do późniejszego przetworzenia, a następnie udostępnia nowe polecenie zarządzania: send_mail.
Kiedy już będziesz gotowy do wysłania biuletynu, możesz ręcznie uruchomić python manage.py send_mail
. Wszystkie e-maile z błędami zostaną przeniesione do odroczonej kolejki, w której możesz spróbować wysłać je później.
Możesz to zautomatyzować, uruchamiając manage.py send_mail
z cron.
Jeśli naprawdę chcesz mieć ochotę i zrobić to ze strony administratora, zainstaluj django-chronograph i skonfiguruj tam harmonogram wysyłania wiadomości.
To wydaje się być dobrym rozwiązaniem. Nie sądzę, że aktualizowanie mojej strony byłoby dużym problemem, ale jak ludzie robili to przed Django 1.1? – Lorenzo
Ta funkcja faktycznie rozpoczęła się jako aplikacja innej firmy: http://code.google.com/p/django-batchadmin/ –
Po prostu aktualizacja; Django zawiera teraz akcje administracyjne we wszystkich wersjach po 1.1: http://docs.djangoproject.com/en/1.2/ref/contrib/admin/actions/ –