Набор запросов Django Limit ManytoMany на основе выбранного FK

У меня есть модель, которая выглядит следующим образом:

class Invite(models.Model):
    user = models.ForeignKey(User)
    event = models.ForeignKey(Event)
    roles = models.ManyToManyField(Role, blank=True, null=True)
    sent =  models.BooleanField("Invite Sent", default=False, editable=False)
    created = models.DateTimeField(auto_now_add=True)

    def __unicode__(self):
        return u"%s" % self.user

    class Meta:
        unique_together =(('user','event'),)


class Role(models.Model):
    """
    This associates a user's role to an event
    """
    event = models.ForeignKey(Event, related_name="roles")
    roletype = models.ForeignKey(RoleType)
    profiles = models.ManyToManyField(Profile, related_name="roles",
            blank=True, null=True)
    modified = models.DateTimeField(auto_now=True)
    created = models.DateTimeField(auto_now_add=True)

Таким образом, всякий раз, когда создается новое событие, вместе с ним создается группа ролей. Как в модели приглашения отображать только роли, связанные с событием, которое я выбрал в форме изменения в Django Admin, вместо отображения всех записей в модели ролей?

11
задан okm 26 March 2012 в 14:15
поделиться