2012-04-05 5 views
1

tastypie 리소스에서 save_m2m이 필요한 이유를 이해했습니다. POST에서 하나의 모델 작성과 관련된 데이터 만 게시하고 m2m 오브젝트와 관련된 사항을 보내지 않으면 save_m2m을 수행해야합니다. 필요한 이유는 무엇입니까? save_m2m을 무시하면 아무 일도 일어나지 않습니다. 그것은 잘 작동하고 내 자원이 만들어집니다, 나는 이것이 초래할 수있는 숨겨진 의미의 확실하지 않아요. 의견을 주시기 바랍니다.tastypie : save_m2m

답변

3

is_m2m=True으로 표시된 필드가없는 경우이 메서드는 실제로 아무 것도하지 않습니다. save_m2m에서 tastypie 문서화 문자열에서 : tastypie의 자원 내부

""" 
Handles the saving of related M2M data. 

Due to the way Django works, the M2M data must be handled after the 
main instance, which is why this isn't a part of the main ``save`` bits. 

Currently slightly inefficient in that it will clear out the whole 
relation and recreate the related data as needed. 
""" 

True로 설정 is_m2m와 필드 save_m2m 방법 검사를 아무도 자원 클래스는 어떤 M2M이없는 경우 그래서 그냥 아무것도하지 않는 발견되지 않는 경우 그리고 다른 리소스는 아무 것도하지 않기 위해 save_m2m 메서드를 무시할 수 있습니다.

실제로 당신은 tastypie (작은 속도 향상 woohoo!))보다 한 루프 앞입니다.