반응형
단일 필드를 선택하는 장고 모델
호출 된 테이블 / 모델 Employees
이 있고 단일 필드의 모든 행을 쿼리 세트로 가져오고 싶습니다.
나는 내가 이것을 할 수 있다는 것을 안다 (내가 이것을 올바르게하고 있기를 바랍니다) :
emp_list = Employees.objects.get(all)
emp_names = emp_list.eng_name
모든 필드에 대해 데이터베이스를 쿼리하고 하나만 사용합니까? 더 나은 (더 빠른) 방법이 있습니까?
Employees.objects.values_list('eng_name', flat=True)
모든 eng_name
s의 단순 목록을 만듭니다 . 행당 하나 이상의 필드를 원하면 단순 목록을 수행 할 수 없습니다. 그러면 튜플 목록이 생성됩니다.
Employees.objects.values_list('eng_name', 'rank')
이외에도 values_list
으로 다니엘이 언급 당신은 또한 사용할 수 있습니다 only
(또는 defer
반대의 효과에 대한) 그들의 ID와 지정된 필드를 가지는 객체의 검색어를 얻을 수 있습니다 :
Employees.objects.only('eng_name')
이렇게하면 단일 쿼리가 실행됩니다.
SELECT id, eng_name FROM employees
값보다 필수 필드를 선택할 수 있습니다.
Employee.objects.all().values('eng_name','rank')
Oskar Persson의 대답은 데이터를 컨텍스트 로 전달하고 일반 값 목록 대신 개체 인스턴스 (소품을 얻기 위해 쉽게 반복 가능)를 얻을 때 템플릿 에서 정상적으로 처리하는 것이 더 쉽기 때문에이를 처리하는 가장 좋은 방법 입니다.
그 후 원하는 소품을 쉽게 얻을 수 있습니다.
for employee in employees:
print(employee.eng_name)
또는 템플릿에서 :
{% for employee in employees %}
<p>{{ employee.eng_name }}</p>
{% endfor %}
참고 URL : https://stackoverflow.com/questions/7503241/django-models-selecting-single-field
반응형
'programing' 카테고리의 다른 글
HTML5 캔버스 텍스트의 스타일을 굵게 및 / 또는 기울임 꼴로 어떻게 지정합니까? (0) | 2020.11.04 |
---|---|
헤더 또는 URL에 API 키 배치 (0) | 2020.11.04 |
pip 요구 사항 파일을 사용하여 패키지를 제거하고 설치하려면 어떻게해야합니까? (0) | 2020.11.04 |
프로그래밍 방식으로 Play 스토어에서 앱 업데이트 확인 (0) | 2020.11.04 |
실험적 :: 파일 시스템 링커 오류 (0) | 2020.11.04 |