Я хочу сузить набор запросов для поля формы с внешним ключом к таблице пользователя до группы, к которой принадлежит пользователь.
Группы были ранее связаны со мной. Модель может иметь что-то вроде следующего:
myuser = models.ForeignKey(User)
И мой ModelForm очень голый:
class MyForm(ModelForm):
class Meta:
model = MyModel
Поэтому, когда я создаю экземпляр формы, я делаю что-то подобное в своих views.py:
form = MyForm()
Теперь мой вопрос: как я могу взять поле myuser и отфильтровать его так, чтобы отображались только пользователи группы 'foo' .. что-то вроде:
form.fields["myuser"].queryset = ???
Запрос в SQL выглядит следующим образом:
mysql> SELECT * from auth_user INNER JOIN auth_user_groups ON auth_user.id = auth_user_groups.user_id INNER JOIN auth_group ON auth_group.id = auth_user_groups.group_id WHERE auth_group.name = 'client';
Я бы хотел избежать использования сырого SQL. Возможно ли это сделать?