Срабатывание трекера без изменения значения в django?
У меня есть сценарий использования, в котором я отслеживаю изменения поля. Моя проблема в том, что я хочу запускать его, даже если в этом поле нет изменений.
Например, поле состояния изменяется с Null -> IM -> OK -> OK. Я разместил свой код логирования на основе изменения поля статуса, и из-за некоторых ограничений мне пришлось сделать изменение статуса с IM на OK. Теперь я хочу запустить трекер для OK - > OK (только в первом случае)
<@receiver(post_save, sender="iot_app.VehicleNumber")
def vehiclenumber_post_save(sender, instance, created, *args, **kwargs):
if changed == 'status':
if created:
continue
try:
log_ota_events.delay(
vehicle_id=instance.id,
event=getattr(instance, '_event_type'),
source=getattr(instance, '_event_source', None),
source_id=getattr(instance, '_event_source_id', None),
metadata={
'immobilize_status': instance.status,
'immobilizer_action': instance.immobilizer_action,
'immobilisation_valid_upto': str(instance.immobilisation_valid_upto),
},
comment=getattr(instance, '_event_comment', None),
)
except Exception as e:
logger.warning(f"Couldn't log the event {e}", exc_info=True)```