FreedomBox/plinth/kvstore.py
Sunil Mohan Adapa a3e21adc8b
*: Various isort fixes
- Done automatically by running isort . in top level directory.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2021-09-20 16:50:37 -04:00

34 lines
778 B
Python

# SPDX-License-Identifier: AGPL-3.0-or-later
"""
Simple key/value store using Django models
"""
def get(key):
"""Return the value of a key"""
from plinth.models import KVStore
# pylint: disable-msg=E1101
return KVStore.objects.get(pk=key).value
def get_default(key, default_value):
"""Return the value of the key if key exists else return default_value"""
try:
return get(key)
except Exception:
return default_value
def set(key, value): # pylint: disable-msg=W0622
"""Store the value of a key"""
from plinth.models import KVStore
store = KVStore(key=key, value=value)
store.save()
def delete(key):
"""Delete a key"""
from plinth.models import KVStore
return KVStore.objects.get(key=key).delete()