Quiero codificar los datos antes de guardarlos en una tabla de base de datos y decodificarlos después de leerlos en la tabla de la base de datos. Quería anular los métodos de obtención y guardado de django.¿Cómo puedo anular el método get en django Model?
algo como:
class UserData(models.Model):
userid = models.IntegerFields
data = models.charField(max_length=25)
def save(self, *args, **kwargs):
encode_data(self.data)
super(UserData, self).save(*args, **kwargs)
def get(self, *args, **kwargs):
data = super(UserData, self).get(*args, **kwargs)
return decode_data(data)
modelos de Django tiene método para guardar y yo soy capaz de anular y hacer lo que quiera. Pero, parece que no tienen un método get que puedo anular. ¿Cómo puedo lograr esto? Quiero que los datos se decodifiquen al llamar a UserData.objects.all() o UserData.objects.get() o UserData.objects.filter() o cualquier otro de estos métodos disponibles
Agradable y simple, yum –
Esto fue muy útil, gracias. Documentación de las señales de Django: https://docs.djangoproject.com/en/dev/ref/signals/ –