To get started with Django, I'm using it to build a small site for my softball team where we can list the stats of each player. For the model I've defined 2 tables - Player and Statline where the player in Statline is the foreign key.
class Player(models.Model):
name = models.CharField(max_length=32)
gender = models.CharField(max_length=1, choices=GENDER_CHOICES)
bats = models.CharField(max_length=1, choices=HANDED_CHOICES)
throws = models.CharField(max_length=1, choices=HANDED_CHOICES)
position = models.CharField(max_length=2, choices=POSITION_CHOICES)
pitches = models.CharField(max_length=1, choices=PITCHES_CHOICES)
hometown = models.CharField(max_length=32)
def __unicode__(self):
return self.name
class StatLine(models.Model):
season_name = models.CharField(max_length=12, choices=SEASON_CHOICES)
player = models.ForeignKey(Player)
at_bats = models.IntegerField(max_length=2, choices=NUMBER_CHOICES, default=0)
singles = models.IntegerField(max_length=2, choices=NUMBER_CHOICES, default=0)
doubles = models.IntegerField(max_length=2, choices=NUMBER_CHOICES, default=0)
triples = models.IntegerField(max_length=2, choices=NUMBER_CHOICES, default=0)
homeruns = models.IntegerField(max_length=2, choices=NUMBER_CHOICES, default=0)
runs = models.IntegerField(max_length=2, choices=NUMBER_CHOICES, default=0)
rbis = models.IntegerField(max_length=2, choices=NUMBER_CHOICES, default=0)
rboe = models.IntegerField(max_length=2, choices=NUMBER_CHOICES, default=0)
What I'm looking to do is do a query where I sum up all of the stats for each player and group it by player. That way I have a running tally of all of our stats for each season. In SQL when I built the site in PHP, it was:
FROM Stats
INNER JOIN Players ON Players.player_id = Stats.player_id
WHERE season_name = 'Spring 2012'
GROUP BY Players.player_name
I'm confused on how to use Django to perform the same query. Any help would be much appreciated!