2009-03-13 8 views
3

Dans mon modèle j'ai beaucoup à beaucoup de relation entre 2 tables Utilisateurs et Groupes. Dans l'interface d'administration, je vois le widget SelectMultiple pour les groupes. En fait, j'utilise filter_horizontal, je vois les groupes disponibles et les groupes sélectionnés dans 2 listes séparées. Est-il possible de filtrer la liste des groupes disponibles que je peux voir (en fonction de certains critères). Je ne veux pas montrer tous les groupes dans la table des groupes. MerciDjango Admin SelectMultiple Widget

Répondre

3

Dans votre classe de formulaire, vous pouvez spécifier un queryset personnalisé pour le groupe sur le terrain, qui détermine ensuite les instances de groupe-sont disponibles sous la forme:

class UserForm(forms.ModelForm): 
    # override the default groups field 
    groups = forms.ModelMultipleChoiceField(
     queryset=Groups.objects.filter(YOUR_CONDITIONS), 
     widget=forms.SelectMultiple, 
    ) 

    class Meta: 
     model = User 
Questions connexes