В стандартном представлении администратора Django для объекта-пользователя (редактировать пользователя) можно редактировать членство пользователя в группах. Что, если бы я хотел и наоборот? Т.е. на странице редактирования группы можно было выбрать пользователей, которые принадлежат к редактируемой группе.
Как я вижу, Django не имеет отображения ManyToMany из объекта Group в User, что делает невозможным (?) Реализацию Класс ModelAdmin для этого конкретного случая. Если бы я мог создать дополнительный класс модели UsersOfGroup и использовать его в поле ManyToMany модели Django Group в качестве сквозного атрибута, мог бы быть способ.
Любые идеи, возможно ли это реализовать с помощью уловок ModelAdmin, или у меня просто есть чтобы создать пользовательский вид для редактирования групп?
Я проверил эти два других вопроса, но они не совсем то же самое: Ответ от Криса был почти готов. :) В группе есть ссылка на набор пользователей, но она называется user_set , а не users . Итак, вот изменения, которые я сделал:
if self.instance and self.instance.pk:
self.fields['users'].initial = self.instance.user_set.all()
и
if group.pk:
group.user_set = self.cleaned_data['users']