Привет всем и спасибо за поддержку ЕЖЕДНЕВНО, правда. Теперь, клянусь, я не могу найти ответы между многими примерами и смежными темами:
У меня есть модель ТРАНСПОРТНЫЕ СРЕДСТВА и модель ШИНЫ . Оба будут связаны полем, PLATE;
class Vehicles(models.Model):
Plate= models.CharField(max_length=10)
Quantity = models.IntegerField(default=0)
Vendor = models.CharField(max_length=50)
def __str__(self):
return self.matricula
class Tires(models.Model):
Plate = models.ForeignKey(Vehicle, default=0, on_delete=models.SET_DEFAULT) # --- tires would be placed in an exisiting vehicle (plate), or , if not in use, "Tires.Plate=0"
Number = models.IntegerField(unique=True)
Что мне нужно, эти два позволяют мне делать то, что они действительно делают или не делают:
- Добавление записей в транспортные средства ......... ........ ДА
- Добавление шин с предварительно определенными номерами дисков в раскрывающемся меню из Транспортных средств. Таблички .................... ДА, ПРОВЕРИТЬ
- Добавление шин с номером пластины = 0, указывающим, что шина не используется ни одним транспортным средством ....... НЕТ, НЕ ПРОВЕРЕНО; меню предлагает только существующие таблички в "Vehicles.Plate": даже если я попытался добавить значение DEFAULT.
- Удаление регистров из ШИН ...... ... CHECK
- Удаление регистров из транспортных средств ....... НЕ ПРОВЕРЕНО; делая это вместо того, чтобы присвоить соответствующему значению Tires.Plate значение по умолчанию 0, как я ожидал от
"...ForeignKey(Vehicle, default=0, on_delete=models.SET_DEFAULT)"
, я получаю «Сбой ограничения FOREIGN KEY» ошибка.
Так что, действительно, удаляя транспортное средство, я вызываю ошибку целостности - я прочитал определения и логи c иностранных ключей, 1-клавишные, извините, но, на самом деле, я не читал ни одного примера или учебника в общих чертах описывается этот случай c.
Можете ли вы дать мне идею, пожалуйста, посмотрите, пожалуйста?