Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

280
Vistas
Actualice solo esa propiedad, no todo el modelo, django
@property def policy_escape(self): if self.date - datetime.date.today: self.status = 2 self.save() def save(self, *args, **kwargs): self.counter = counter + 1

Tengo esta lógica para las políticas. Por cada política creada, quiero aumentar un número de propiedad (este no es exactamente mi caso).

Quiero que cuando la fecha de la póliza sea la fecha de hoy para cambiar el estado de esa póliza. Pero cuando lo cambio, el contador de pólizas aumenta.

¿Alguien puede ayudarme a actualizar solo el estado sin actualizar otras propiedades?

Gracias por adelantado

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Podrías limitar los update_fields de actualización:

 @property def policy_escape(self): if self.date - datetime.date.today: self.status = 2 self.save(update_fields=("status",))

Sin embargo, el objeto particular de Python aún tendría el contador cambiado. Por lo tanto, debe evitar cualquier otra llamada de save en ese objeto.

En su lugar, podría pasar un kwarg personalizado:

 @property def policy_escape(self): if self.date - datetime.date.today: self.status = 2 self.save(update_counter=False) def save(self, *args, **kwargs, update_counter=True): if update_counter: self.counter += 1 # ... super().save(*args, **kwargs):

Otra forma de evitar que se llame a save es usar Queryset.update en su lugar:

 @property def policy_escape(self): if self.date - datetime.date.today: self.__class__.objects.filter(pk=self.pk).update(status=2) # self.status = 2 # if the current object should reflect that change
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda