2014-09-22 2 views
0

У меня есть эта модель менеджера футбольных результатов:результата футбола Группы по баллам

#Model for football matchs 
class Match(models.Model): 
    name = models.CharField(max_length=200) 
    slug = models.SlugField(max_length=200, blank=True, null=True) 
    match_date = models.DateTimeField('match date', blank=True, null=True) 

    home = models.ForeignKey(Team, related_name='home') 
    away = models.ForeignKey(Team, related_name='away') 

    home_goals = models.DecimalField(max_digits=5, decimal_places=0, blank=True, null=True) 
    away_goals = models.DecimalField(max_digits=5, decimal_places=0, blank=True, null=True) 

    league = models.ForeignKey(League) 
    season = models.ForeignKey(Season, blank=True, null=True) 

    def __unicode__(self): 
     return unicode(self.name) 

    def save(self, *args, **kwargs): 
     if not self.id: 
     self.slug = slugify(self.name) 
     super(Match, self).save(*args, **kwargs) 




#Model for crowd matches results 
class CrowdResult(models.Model): 
    user = models.ForeignKey(User) 
    created_date = models.DateTimeField('match date', blank=True, null=True) 
    home_goals = models.DecimalField(max_digits=5, decimal_places=0, blank=True, null=True) 
    away_goals = models.DecimalField(max_digits=5, decimal_places=0, blank=True, null=True) 
    match = models.ForeignKey(Match, related_name='match') 

Так что я хочу получить результаты толпы, связанные с определенным матчем, сгруппированного по дому/далеки целями

ответ

1

использования:

from django.db.models import Count 
CrowdResult.objects.values('match', 'home_goals', 'away_goals').order_by().annotate(Count('match'), Count('home_goals'), Count('away_goals')) 
+0

отлично работает, спасибо большое! –

Смежные вопросы