37번째 줄: |
37번째 줄: |
| 객체 = 모델.objects.get(pk=기본키값, 이외옵션.) # 없거나 2개 이상이면 에러가 나는데, 서버에러로 인식한다. | | 객체 = 모델.objects.get(pk=기본키값, 이외옵션.) # 없거나 2개 이상이면 에러가 나는데, 서버에러로 인식한다. |
| 객체 = 모델.objects.get(id=기본키값) # 위와 동일 | | 객체 = 모델.objects.get(id=기본키값) # 위와 동일 |
− | 객체 = 모델.objects.filter(id=기본키값) # 위와 동일하나, 2개 이상도 쿼리셋으로 가져온다. | + | 객체 = 모델.objects.filter(id=기본키값) # 위와 동일하나, 1개도 쿼리셋으로 가져온다. get처럼 쓰려면 맨 뒤에 .first() 혹은 .last()로 하나만 뽑아내자. |
| 객체 = get_object_or_404(모델, pk=기본키값) # 서버에러가 나지 않게끔 404 에러를 발생시킨다. | | 객체 = get_object_or_404(모델, pk=기본키값) # 서버에러가 나지 않게끔 404 에러를 발생시킨다. |
| | | |
190번째 줄: |
190번째 줄: |
| 하위에서 상위모델로 갈 땐 <code>모델.상위모델</code> 형태로 접근. 하위모델에서 자신과 연결된 상위모델을 조회할 수 있다.(다른 모델을 연결할 땐 대문자를 소문자로 바꾸어주어야 한다.) | | 하위에서 상위모델로 갈 땐 <code>모델.상위모델</code> 형태로 접근. 하위모델에서 자신과 연결된 상위모델을 조회할 수 있다.(다른 모델을 연결할 땐 대문자를 소문자로 바꾸어주어야 한다.) |
| | | |
− | 상위에서 하위모델로 갈 땐 <code>모델.하위모델_set</code> 형태로 접근.(_set은 아래로 간다는 방향을 지정해주기 위한 기능인듯) | + | 상위에서 하위모델로 갈 땐 <code>모델.하위모델_set.all()</code> 형태로 접근.(_set은 아래로 간다는 방향을 지정해주기 위한 것) |
| ====DB에 접근하는 경우==== | | ====DB에 접근하는 경우==== |
| DB의 칼럼에 접근하여 뽑아내는 경우, 상위모델을 뽑아낼 땐 '<code>모델.상위모델__속성명</code>' 형태로 접근할 수 있다.(모두 소문자로) | | DB의 칼럼에 접근하여 뽑아내는 경우, 상위모델을 뽑아낼 땐 '<code>모델.상위모델__속성명</code>' 형태로 접근할 수 있다.(모두 소문자로) |
323번째 줄: |
323번째 줄: |
| |exists() | | |exists() |
| |있나 없나 여부만 True, False로 반환. | | |있나 없나 여부만 True, False로 반환. |
| + | 모델.objects.filter().exists() 형태로 활용. |
| |- | | |- |
| |order_by() | | |order_by() |