1088831574511700
이성용
  • 2016.7.20 18:47
  • 조회수 69
  • 답변수 1
1088831574511700
이성용
  • 2016.7.20 18:47
  • 조회수 69
  • 답변수 1

get 함수와 filter 함수의 차이

안녕하세요. 강의가 아주 체계적이고 쉬워서 잘 이해할 수 있어서 감사합니다.

  1. Poll.objects.filter() 를 사용하지 않고 Poll.objects.get() 을 한 이유가 현재 진행중인 투표가 반드시 하나만 존재해야 하기 때문인가요?
    즉, 오늘 날짜를 기준으로 현재 진행중인 투표가 여러개가 될 수 없다는 가정인건가요?
    그렇다면 filter() 함수는 여러개의 객체를 찾는 것이고 get() 함수는 하나의 객체를 찾는 건가요? 차이가 궁금합니다.

  2. get() 함수는 찾고자 하는 조건이 없으면 에러를 발생시킨다고 하셨는데 filter() 함수도 그런가요?

  • #장고를 활용한 웹사이트 만들기
  • #여론조사 화면 구현

1 답변

  • Gscxhpxkg5i74t30rimh
    정두식
    • 2016.8.5 05:44

    1. 네. 맞습니다. filter는 여러개를 찾아오고, get은 하나를 찾아 옵니다.
      filter는 QuerySet을 리턴하고, get은 해당 모델의 객체를 리턴합니다.

    2. 아니요. 빈 QuerySet을 리턴합니다.

    • 만약 get으로 조건에 맞는 객체를 찾아올 때, 조건에 맞는 객체가 여러개가 있다면 get함수는 그 중 id가 가장 빠른 객체를 리턴해주나요?-윤영식
      2016.9.6 20:00

답변 쓰기

이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.