与Django中多个字段的多对多关系
我有以下型号:与Django中多个字段的多对多关系,django,many-to-many,Django,Many To Many,我有以下型号: class Trip(models.Model): driver = models.ForeignKey(User) trip_cost = models.IntegerField(blank=True, null=True) passenger = models.CharField(max_length=50, blank=True, null=True) shared_cost = models.IntegerField(default=0,
class Trip(models.Model):
driver = models.ForeignKey(User)
trip_cost = models.IntegerField(blank=True, null=True)
passenger = models.CharField(max_length=50, blank=True, null=True)
shared_cost = models.IntegerField(default=0, blank=True, null=True)
每个行程
可以有一个驾驶员
,也可以有一个驾驶员
和几个乘客
。对于每位乘客
驾驶员可以设置每位乘客将要支付的旅行费用的百分比
我需要的是:
要列出所有用户的passenger
字段
几名乘客
+分担了每次行程的成本
李>
我想我应该使用多对多,但我不能让它工作。另外,当我尝试将乘客设置为models.ForeignKey(User)
时,我会收到一个错误
非常感谢任何帮助或指导。当使用两个字段引用相同型号时,请使用相关名称
class Trip(models.Model):
driver = models.ForeignKey(User,on_delete=models.CASCADE, related_name='driver')
trip_cost = models.IntegerField(blank=True, null=True)
passenger = models.ForeignKey(User,on_delete=models.CASCADE, related_name='passenger')
shared_cost = models.IntegerField(default=0, blank=True, null=True)