해결된 질문
작성
·
163
답변 1
0
안녕하세요.
Tag.objects.create(...) 는 Tag 모델 인스턴스 생성 및 저장(save)까지 모두 수행을 합니다. 모든 모델 클래스에서 지원을 하구요.
add는 ManyToManyField에서 지원하는 메서드입니다. M2M 관계를 추가하는 역할을 합니다.
ManyToManyField에서는 create 메서드도 지원하는 데요. 이는 Tag 인스턴스에 대한 create 및 M2M 관계에 대한 add까지 수행을 해줍니다.
그러니 post.tag_set.create(name="new tag") 태그가 잘 동작하셨다면, post.tag_set.all() 내역에서도 "new tag" name의 Tag가 존재합니다.
설명 만으로 수행하신 정확한 동작을 제가 예상하긴 어려우니, 실제로 수행하신 코드들과 그 코드들에 대해서 예상하는 동작에 대한 설명까지 같이 첨부해주시면, 제가 보다 좋은 답변을 드릴 수 있을 듯 합니다.
화이팅입니다. :-)
ps. 질문이 해결되셨다면, 본 질문의 상태를 해결됨으로 변경 부탁드립니다.
제 너무 두서없이 질문을 드려네요ㅠㅠ 답변 감사드립니다.
제 질문의 의도는 위와 같이 Tag.objects.create(name="aasdf") 를 통해 태그를 추가하고
Tag.objects.all() 를 확인하면 추가된 태그가 쿼리셋을 통해 확인이 가능한데
어째서 post.tag_set.all() 을 통해서는 확인이 안되는건지를 여쭤본 것이었습니다.