Sur la base de la documentation Django, je devrais pouvoir passer plusieurs objets à la fois pour être ajouté à une relation manytomany mais j'obtiens un
* TypeError: type non détachable: 'list'
quand j'essaye de passer un jeu de requêtes django dans une liste. Le passage d'un Queryset ou d'un ValuesListQueryset semble également échouer. Y a-t-il un meilleur moyen que d'utiliser une boucle for?
django
list
manytomanyfield
philgo20
la source
la source
Pour ajouter, si vous souhaitez les ajouter à partir d'un ensemble de requêtes
Exemple
De: insérer les résultats de l'ensemble de requêtes dans ManytoManyfield
la source
Django 1.9 ajoute des moyens supplémentaires pour ajouter à une relation plusieurs-à-plusieurs.
Documentation: https://docs.djangoproject.com/en/dev/ref/models/relations/#django.db.models.fields.related.RelatedManager.set
set
est une nouvelle finesse:la source
set
était toujours là je pense. C'est juste que cela fonctionnait par affectatione.related_set = new_list
dans les Djangos plus anciense.related_set.set(new_list)
. Ils se sont juste rendu compte que «l'explicite vaut mieux que l'implicite».