반응형
ManyToMany 필드에 데이터를 추가하는 방법은 무엇입니까?
어디에서도 찾을 수 없으므로 도움이 될 것입니다. :) 여기에 해당 필드가 있습니다.
categories = models.ManyToManyField(fragmentCategory)
FragmentCategory :
class fragmentCategory(models.Model):
CATEGORY_CHOICES = (
('val1', 'value1'),
('val2', 'value2'),
('val3', 'value3'),
)
name = models.CharField(max_length=20, choices=CATEGORY_CHOICES)
보낼 양식은 다음과 같습니다.
<input type="checkbox" name="val1" />
<input type="checkbox" name="val2" />
<input type="checkbox" name="val3" />
나는 다음과 같이 시도했다.
categories = fragmentCategory.objects.get(id=1),
또는:
categories = [1,2]
이것에 전념 하는 Django 문서의 전체 페이지가 있으며 내용 페이지에서 잘 색인화되어 있습니다.
페이지에 나와 있듯이 다음을 수행해야합니다.
my_obj.categories.add(fragmentCategory.objects.get(id=1))
또는
my_obj.categories.create(name='val1')
경우 다른 사람이 끝에서 여기까지 관리 폼 Many2Many 절약 동작을 사용자 정의하기 위해 애 쓰고, 당신은 호출 할 수 없습니다 self.instance.my_m2m.add(obj)
귀하의에 ModelForm.save
로, 재정 ModelForm.save
나중에에서 M2M 웁니다 self.cleaned_data['my_m2m']
변경 사항을 덮어 어느. 대신 전화 :
my_m2ms = list(self.cleaned_data['my_m2ms'])
my_m2ms.extend(my_custom_new_m2ms)
self.cleaned_data['my_m2ms'] = my_m2ms
(수신 QuerySet을 목록으로 변환하는 것은 괜찮 ManyToManyField
습니다. 어쨌든 그렇게합니다.)
참고 URL : https://stackoverflow.com/questions/1182380/how-to-add-data-into-manytomany-field
반응형
'development' 카테고리의 다른 글
순환 복잡성을 최소화하는 조건부 로깅 (0) | 2020.11.24 |
---|---|
솔로 개발자에게 지속적인 통합이 중요한가요? (0) | 2020.11.24 |
프로덕션 코드의 System.Diagnostics.Debug.WriteLine (0) | 2020.11.24 |
하위 도메인에서 허용되는 문자는 무엇입니까? (0) | 2020.11.24 |
2D 배열의 차원에서 평균 계산 (0) | 2020.11.24 |