# Django update() In Signal Not Sticking

**URL:** <https://forum.djangoproject.com/t/django-update-in-signal-not-sticking/39510>\
**Category:** Using Django\
**Created:** [March 12, 2025, 5:03pm UTC](https://forum.djangoproject.com/t/django-update-in-signal-not-sticking/39510 "2025-03-12T17:03:10Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![jspataro99](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.djangoproject.com/jspataro99/32/27442_2.png) [@jspataro99](https://forum.djangoproject.com/u/jspataro99)\
**Post date:** [March 12, 2025, 5:03pm UTC](https://forum.djangoproject.com/t/django-update-in-signal-not-sticking/39510/1 "2025-03-12T17:03:10Z")

</div>

I am having an issue in my post\_save signal where a django update() statement is not always keeping the change. There are 2 different views on our site that let you create a new clinic object, one of them is a form the user fills out and saves and the other is an implicit creation of the clinic() object that gets saved.

```auto
new_clinic = ClinicForm(self.request).save()

```

```auto
new_clinic = clinic(name=new_quest.name, quest_preferred=new_quest.quest_preferred,
                              uds_appointment_required=new_quest.uds_appointment_required, 
                              active=True)
new_clinic.save()

```

In the signal there is an update statement to update a unique identifier generated from an external DB that looks like this:

```auto
clinic.objects.filter(id=instance.id).update(external_site_id=generated_id)

```

This statement works for the form method above but does not work for the other method of manually creating the object with assigned data. It temporarily holds the external\_id value and while in the signal I can print the value with this query:

```auto
clinic.objects.get(id=instance.id).external_site_id

```

This works and shows the right value. At the end of the signal though, the value is back to None as if it never happened. Other than this specific field, the model saves completely fine and everything else works. I’m at a loss for why this might be happening as there are no errors or exceptions. We also use django simple history and this column is never updated in the history tables either. Almost like its only saving the field in memory and not to our DB. The current workaround I found looks like this:

```auto
post_save.disconnect(clinic_save, sender=clinic)
instance.traq_site_id = new_traq_id
instance.save()
post_save.connect(clinic_save, sender=clinic)

```

I’m not sure this is the best solution though. Any help is much appreciated.
