프로젝트 백엔드 수정및 작성하기 : 지금까지 작성했던 백엔드에서 오류가 자꾸 나서 처음부터 확인하면서 다시 작성해보았다. 수정 후에는 제발 오류가 나지 않기를..😥😥
보통은 해당 app을 import해와서
from user.models import User
user = models.ForeignKey(User, on_delete=models.CASCADE)
이런 식으로 작성하였는데 이 방법을 사용하려고 하니 오류가 발생하는 경우가 있었다.
이런 경우
filter_history = models.ManyToManyField('store.Filter', related_name="filter_user")
이렇게 입력하니 오류가 나지 않았다!
다대다의 경우라서 이런 오류가 나는걸까..?? 오류가 나는 이유는 아직 파악하지 못해서 튜터님께 여쭈어 보아야겠다!!
The `.create()` method does not support writable nested fields by default.
Write an explicit `.create()` method for serializer
오류를 구글에 검색해보니 시리얼라이저를 중첩해서 오류가 난다고 나왔다. post를 하며 무언가를 create할때에는 시리얼 라이저를 중첩하면 안되고 중첩하려면 create이라는 함수를 따로 작성해주어야 한다고 한다.
우리는 이 오류를 해결하기 위해 중첩 시리얼 라이저를 중첩이 되지 않도록 바꿔봤는데 오류가 생기지 않았다.
튜터님께 여쭈어보니 시리얼라이저가 중첩이어도 된다고 하시던데 한번 더 제대로 알아봐야겠다.