1
嗨#1人,Django的:最佳实践与Foreignkeys和多种型号
什么是从一个模式是指ForeignKeys的选择的最佳方式?
我正在致力于租赁应用程序,其中包括GenericVehicle,自行车和汽车的模型。
class GenericVehicle(models.Model):
licence = models.CharField(max_length=128)
...
class Meta:
abstract = True
class Bike(GenericVehicle):
engine_type = models.CharField(max_length=128)
...
class Car(GenericVehicle):
number_of_doors = models.SmallIntegerField()
...
现在我有一个租赁登记的模型,在那里我想注册租用的车辆。我不确定这里的最佳做法。到目前为止,我有两个外键,并确保至少有一个填充。但是这种解决方案似乎效率很低,并且不适合多种车型。
改进类结构/定义的最佳方法是什么?
class Rental(models.Model):
rental_bike = models.ForeignKey(Bike)
rental_car = models.ForeignKey(Car)
rental_date = ...
谢谢您的建议。我正在努力寻找一段有效的解决方案。