Open myunbongs opened 2 years ago
다른 분들의 코드와, 레퍼런스들을 보면서 related_name
의 중요성과 어떻게 작성하는지는 이해했는데, +로 설정하게 되면 저런 문제가 있을거라곤 생각치 못했습니다. related_name
을 수정을 해야겠네요.
최초에 related_name
을 설정하지 않았을 때, clashes with reverse accessor 에러가 발생했었고, 확인결과 related_name
을 지정하지 않아 역방향 관계 이름이 동일해서 에러가 발생함을 알게 되었습니다.
그래서 내린 결론이 '역관계를 생성하지 않으면 되지 않을까' 여서 공식문서의 (ForeignKey.related_name) If you’d prefer Django not to create a backwards relation, set related_name to '+' 를 보고 사용을 해봤습니다.
현빈님의 리뷰를 읽다보니 생성되지 않는걸 직접 눈으로 확인하지 않기도 했고, 역방향 관계를 쓸 일도 있을거 같다는 생각이 듭니다. 앞으로 related_name
을 작성할때는 가독성과 연관성을 고려해가면서 작성해야겠다는 반성을 하게되네요. 리뷰 감사드립니다.
기존 미션에서 더 나아가 뷰와 템플릿까지 구현해주신 영채님! 정말 고생 많으셨습니다 🔥 이번에도 잘 읽고 배우고 갑니다 !
models.py in Faq, Answer model:
Answer class의 첫 번째 인스턴스의 마지막 수정자에 접근한다고 가정했을 때,
와 같이 접근하게 될 텐데 이는 코드 이해와 가독성 면에서 불편할 뿐만아니라 모든 related_name을 모두 '+'로 설정해주셨기 때문에 잘못된 값을 가져오게 될 것 같습니다 🥺
따라서 각자 다른 User를 참조하고 있는 객체와 연관되는 related_name을 설정해줌으로써 추후 접근시 충돌이 일어나지 않게 되어야 한다고 생각합니다!
models.py line 24 :
역시 공식 문서 꼼꼼히 읽으시는 영채님!!!!!!!!!!!! 주석 보고 또 김현빈 공식 문서 꼼꼼하게 읽기로 다짐했답니다.. 헤헤...
영채님 코드 읽고 조금 더 적극적으로 커리큘럼에 임해야겠다고 생각했습니다 🥰