musik/game/forms.py

28 lines
794 B
Python

from django import forms
from . import models
class GroupAddMembersForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields["members"].queryset = self.fields["members"].queryset.exclude(
id=self.instance.owner.id
)
class Meta:
model = models.Group
fields = ["members"]
class MusikGameForm(forms.ModelForm):
class Meta:
model = models.MusikGame
fields = ["players", "n"]
def __init__(self, *args, **kwargs):
group = models.Group.objects.get(pk=kwargs.pop("group", None))
super().__init__(*args, **kwargs)
self.fields["players"].queryset = (
group.members.all() | models.User.objects.filter(id=group.owner.id)
)