mirror of
https://github.com/jazzband/django-constance.git
synced 2026-03-16 22:40:24 +00:00
database: Ignore operation errors (#229)
This commit is contained in:
parent
3162bd656f
commit
bbfa8fa7dc
1 changed files with 8 additions and 4 deletions
|
|
@ -1,6 +1,7 @@
|
|||
from django.core.cache import caches
|
||||
from django.core.cache.backends.locmem import LocMemCache
|
||||
from django.core.exceptions import ImproperlyConfigured
|
||||
from django.db import OperationalError
|
||||
from django.db.models.signals import post_save
|
||||
|
||||
from .. import Backend
|
||||
|
|
@ -53,9 +54,12 @@ class DatabaseBackend(Backend):
|
|||
if not keys:
|
||||
return
|
||||
keys = {self.add_prefix(key): key for key in keys}
|
||||
stored = self._model._default_manager.filter(key__in=keys)
|
||||
for const in stored:
|
||||
yield keys[const.key], const.value
|
||||
try:
|
||||
stored = self._model._default_manager.filter(key__in=keys)
|
||||
for const in stored:
|
||||
yield keys[const.key], const.value
|
||||
except OperationalError:
|
||||
pass
|
||||
|
||||
def get(self, key):
|
||||
key = self.add_prefix(key)
|
||||
|
|
@ -69,7 +73,7 @@ class DatabaseBackend(Backend):
|
|||
if value is None:
|
||||
try:
|
||||
value = self._model._default_manager.get(key=key).value
|
||||
except self._model.DoesNotExist:
|
||||
except (OperationalError, self._model.DoesNotExist):
|
||||
pass
|
||||
else:
|
||||
if self._cache:
|
||||
|
|
|
|||
Loading…
Reference in a new issue