From 07e7230ae1f9ad0dcfa87fa7c995d487ccda263b Mon Sep 17 00:00:00 2001 From: Rishi Gupta Date: Thu, 7 Jul 2016 17:25:55 -0700 Subject: [PATCH] models.py: Add post_save to Message. Flushes message from cache after a message.save(). Needed for tests where we directly manipulate Message objects in the database. --- zerver/models.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/zerver/models.py b/zerver/models.py index b6bd0f64e7..016b37bf08 100644 --- a/zerver/models.py +++ b/zerver/models.py @@ -1141,6 +1141,13 @@ def get_context_for_message(message): pub_date__gt=message.pub_date - timedelta(minutes=15), ).order_by('-id')[:10] +def flush_message(sender, **kwargs): + # type: (Any, **Any) -> None + message = kwargs['instance'] + cache_delete(to_dict_cache_key(message, False)) + cache_delete(to_dict_cache_key(message, True)) + +post_save.connect(flush_message, sender=Message) # Whenever a message is sent, for each user current subscribed to the # corresponding Recipient object, we add a row to the UserMessage