+from django.utils import translation
+from django.conf import settings
+
+
+@task(ignore_result=True)
+def _refresh_by_pk(cls, pk, language=None):
+ prev_language = translation.get_language()
+ language and translation.activate(language)
+ try:
+ cls._default_manager.get(pk=pk).refresh()
+ finally:
+ translation.activate(prev_language)
+
+def refresh_instance(instance):
+ _refresh_by_pk.delay(type(instance), instance.pk, translation.get_language())