Изменение отношений "один ко многим" в Django
У меня есть две модели в отношениях один к одному:
class GPSDevice(models.Model):
device_name = models.CharField(max_length=50)
class SessionGPS(models.Model):
start= models.IntegerField()
end= models.IntegerField()
gps_device = models.OneToOneField(GPSDevice, on_delete=models.CASCADE, related_name="sesion_gps_device")
Я понял, что у меня есть ошибка, GPSDevice может иметь много SessionGPS. Проблема в том, что для исправления этого я должен удалить отношение один к одному в SessionGPS и добавить поле ForeignKey в GPSDevice:
class GPSDevice(models.Model):
device_name = models.CharField(max_length=50)
session_gps = models.ForeignKey(SessionGPS, on_delete=models.CASCADE, related_name="sesion_gps") #added
class SessionGPS(models.Model):
foco = models.BooleanField(default=False)
inicio_sesion = models.IntegerField()
fin_sesion = models.IntegerField()
#gps_device = models.OneToOneField(GPSDevice, on_delete=models.CASCADE, related_name="sesion_gps_device") deleted
У меня уже есть данные в базе данных, и я боюсь, что перенос этих данных может привести к беспорядку в базе данных, как это уже случалось со мной раньше.
Есть ли другой способ, например, сделать что-то в модели SessionGPS?