I have the following model:
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)
Each Trip
can have a driver
alone, or a driver
with several passenger
. For each passenger
the driver
can set the percentage of the trip_cost
each passenger is going to pay.
What I need is to have:
passenger
to be listing all Users
passenger
+ shared_cost
for each Trip
. I guess I should use Many-to-many but I cannot make it work. Also when I try to set the passenger to models.ForeignKey(User)
, I get an error.
Any help or direction highly appreciated.
Use related_name
when refer to same models using 2 fields.
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)