Можем ли мы обновить значение после того, как оно было использовано в качестве внешнего ключа в django?

У меня есть две таблицы:

class LocationType(models.Model):
    location_type = models.CharField(max_length=120, unique=True)
    comment = models.TextField(null=True, blank=True)

    def __str__(self):
        return self.location_type 

class Location(models.Model):
    location = models.CharField(max_length=100, unique=True)
    location_type = models.ForeignKey(LocationType, to_field="location_type", on_delete=models.CASCADE) 
    comment = models.TextField(null=True, blank=True) 

    def __str__(self):
        return self.location 


и я создал location_type 'PLANT' и затем сослался на него при создании местоположения "GUJRAT".

location_type1 = LocationType.objects.create(location_type="PLANT")
location1 = Location.objects.create(location="GUJRAT", location_type=location_type1)

Теперь, после создания этих двух записей, я хочу изменить значение location_types с "PLANT" на "FACTORIES".

location_type1.location_type = "FACTORIES"
location_type1.save() 

Но я получаю следующую ошибку:

Возможно ли сделать то, что я пытаюсь здесь, или мне нужно обрабатывать это на уровне приложения?

Вернуться на верх