반응형
Django에서 여러 개체를 ManyToMany 관계에 한 번에 추가하는 방법
Django 문서에 기반하여 여러 개체를 동시에 전달하여 여러 도메인 관계에 추가할 수 있습니다.
* TypeError: 캐시할 수 없는 유형: '리스트'
목록에 캐스팅된 장고 쿼리셋을 통과하려고 할 때.Queryset 또는 ValuesList 전달쿼리셋도 실패한 것 같습니다.for 루프를 사용하는 것보다 더 좋은 방법이 있을까요?
용도:object.m2mfield.add(*items)
설명서에 기재되어 있는 바와 같이,
add()
는 임의의 수의 인수를 받아들입니다.인수의 리스트는 받지 않습니다.
add(obj1, obj2, obj3, ...)
목록을 인수로 확장하려면*
add(*[obj1, obj2, obj3])
부록:
장고가 전화를 하지 않는다.obj.save()
각 항목에 대해 사용하지만bulk_create()
,대신.
쿼리셋에서 추가하려면 다음과 같이 하십시오.
예
# Returns a queryset
permissions = Permission.objects.all()
# Add the results to the many to many field (notice the *)
group = MyGroup.objects.get(name='test')
group.permissions.add(*permissions)
시작: 쿼리셋 결과를 ManytoMany 필드에 삽입합니다.
장고 1.9는 다대다 관계에 추가 방법을 추가한다.
문서: https://docs.djangoproject.com/en/dev/ref/models/relations/ #django.db.models.fields.related.RelatedManager.set
set
새로운 기능:
>>> new_list = [obj1, obj2, obj3]
>>> e.related_set.set(new_list)
언급URL : https://stackoverflow.com/questions/4959499/how-to-add-multiple-objects-to-manytomany-relationship-at-once-in-django
반응형
'programing' 카테고리의 다른 글
WPF에서 수식자 키 상태를 검출하려면 어떻게 해야 합니까? (0) | 2023.04.19 |
---|---|
나머지 파일을 수정하지 않고도 하나의 Excel 파일 워크시트(탭)를 읽고 수정할 수 있습니까? (0) | 2023.04.19 |
XAML Designer가 표시되지 않음 (0) | 2023.04.19 |
아이덴티티_INSERT가 OFF로 설정되었습니다. - 어떻게 켜시겠습니까? (0) | 2023.04.19 |
Pip - 시작 관리자에서 치명적인 오류: ''을(를) 사용하여 프로세스를 만들 수 없습니다. (0) | 2023.04.19 |