반응형
1. Field Lookups
- exact, contains, in, gt, lt, startswith 등과 같은 필드 룩업을 사용하겠다는 의미
예시
Blog.objects.filter(name__startswith='Beatles')
더 많은 필드 룩업들을 살펴보려면 Field Lookups에 관한 아래 공식 문서를 살펴보길 바란다.
https://docs.djangoproject.com/en/4.1/ref/models/querysets/#field-lookups
2. 외래키 모델 속성 참조
- 외래키 모델의 속성을 참조할 때에도 속성명 앞에 '__'를 붙인다.
예시
다음과 같이 Employee의 외래키를 User로 지정했다고 하자. 속성명은 user다.
class Employee(models.Model):
...
user = models.ForeignKey(User, on_delete=models.CASCADE)
User 객체의 username 속성값이 mark인 객체를 찾으려면 다음과 같이 접근하면 된다.
Employee.objects.filter(user__username = 'Kim Jooyeok')
참고로, 위에서 설명한 두가지 방법을 한 번에 같이 사용할 수도 있다. 아래 예시에서는 User 객체의 username이 'Kim'으로 시작하는 Employee 객체들을 반환한다.
Employee.objects.filter(user__username__startswith = 'Kim')
반응형
'Django' 카테고리의 다른 글
[Django] 단축 함수 (0) | 2023.02.15 |
---|---|
[Django] 제네릭 뷰의 페이징 기능 (0) | 2023.02.15 |
[Django] 공통 context 변수 설정하기 (0) | 2023.02.11 |
[Django] 날짜형 클래스형 뷰에서 404 에러가 발생하는 경우 (0) | 2023.02.11 |
[Django] 가상 환경에서 Django 사용하기 (0) | 2023.02.01 |
댓글