웹프로그래밍/Django
[Django] class has no objects member 에러
ssung.k
2019. 2. 25. 23:45
안녕하세요 강민성입니다.
현재 vs code 에서 django 공부를 하고 있는데, 분명히 코드가 문제 없음에도 불구하고 계속 오류가 납니다.
바로 class has no objects member 라는 오류가 말이죠.
그 원인과 해결방법을 소개해드리겠습니다.
class has no objects member 해결하기
우선 다음과 같은 빨간 줄은 굉장히 신경쓰이지만 실제로 서버를 실행시켜보면
아무런 문제없이 서버가 돌아가는 것을 알 수 있을 겁니다.
그 이유는 이는 오류가 아닌 vs code의 경고이기 때문입니다.
django의 경우에는, objects 와 같은 속성들을 모든 model 클래스에 동적으로 추가합니다.
따라서 vs code는 이를 눈치채지 못하기 때문에 경고를 하게 되는 것이죠.
해결하는 방법으로는 2가지가 있습니다.
첫 번째 방법
파이썬의 오류를 찾아주는 라이브러리 pylint-django 를 설치해줍니다.
pip install pylint-django
그 다음 user settings 에 아래와 같은 코드를 추가해줍니다.
user settings 를 실행시키는 방법은
window : control + ,
mac : command + ,
그 결과, 경고 메세지가 감쪽같이 없어졌습니다.
두 번째 방법
두 번째 방법은 model을 수정해줍니다.
기존의 모델에
objects = models.Manager()
다음의 코드를 추가해주는 것으로 경고를 해결할 수 있습니다.