6장. API에서 필터링


시스템은 컬렉션을 "쿼리 세트"로 인식합니다. 다양한 연산자를 사용하여 필터링할 수 있습니다.

프로세스

  • "foo"라는 이름이 포함된 그룹을 찾으려면 다음을 사용합니다.

    http://<controller server name>/api/v2/groups/?name__contains=foo
    Copy to clipboard
  • 정확한 일치 항목을 찾으려면 다음을 사용합니다.

    http://<controller server name>/api/v2/groups/?name=foo
    Copy to clipboard
  • 리소스가 정수 유형인 경우 문자열 입력 값을 정수로 캐스팅하려면 \_\_int 를 끝에 추가해야 합니다.

    http://<controller server name>/api/v2/arbitrary_resource/?x__int=5
    Copy to clipboard
  • 다음을 사용하여 관련 리소스를 쿼리할 수 있습니다.

    http://<controller server name>/api/v2/users/?first_name__icontains=kim
    Copy to clipboard

    이렇게 하면 "Kim" 문자열이 포함된 이름이 있는 모든 사용자가 반환됩니다.

  • 한 번에 여러 필드에 대해 필터링할 수도 있습니다.

    http://<controller server name>/api/v2/groups/?name__icontains=test&has_active_failures=false
    Copy to clipboard

    그러면 활성 오류가 없는 "test"가 포함된 모든 그룹이 검색됩니다.

추가 리소스

사용 가능한 연산자 유형에 대한 자세한 내용은 QuerySet API 참조를 참조하십시오.

참고

또한 UI가 사용되는 동안 API에서 다양한 기준으로 필터링하는 방법을 확인할 수 있습니다.

6.1. API의 고급 쿼리

지정된 값과 일치하는 항목으로 반환된 결과 목록을 필터링하는 데 사용되는 추가 쿼리 문자열 매개변수를 사용할 수 있습니다. 필터링을 위해 데이터베이스에 존재하는 필드 및 관계만 사용할 수 있습니다. 지정된 값의 특수 문자가 URL로 인코딩되었는지 확인합니다. 예를 들면 다음과 같습니다.

?field=value%20xyz
Copy to clipboard

필드는 데이터베이스에 정의된 필드 및 관계에 대해서만 관계를 확장할 수도 있습니다.

?other__field=value
Copy to clipboard

특정 기준과 일치하는 결과를 제외하려면 field 매개변수 앞에 not__: 접두사를 지정합니다.

?not__field=value
Copy to clipboard

기본적으로 모든 쿼리 문자열 필터는 AND로 연결되므로 모든 필터와 일치하는 결과만 반환됩니다. 여러 조건 중 하나와 일치하는 결과를 결합하려면 각 쿼리 문자열 매개변수 앞에 or__ 를 붙입니다.

?or__field=value&or__field=othervalue
?or__not__field=value&or__field=othervalue
Copy to clipboard

기본 AND 필터링에서는 여러 데이터베이스 관계에 걸쳐 필터링되는 각 관련 오브젝트에 모든 필터를 동시에 적용합니다. 반면 체인 필터는 각 관련 오브젝트에 필터를 개별적으로 적용합니다. 이를 사용하려면 query 문자열 매개변수 앞에 chain__: 접두사를 붙입니다.

?chain__related__field=value&chain__related__field2=othervalue
?chain__not__related__field=value&chain__related__field2=othervalue
Copy to clipboard

첫 번째 쿼리를 ? 관련field=value&relatedfield2=othervalue 로 작성하는 경우 관련 개체가 두 조건을 모두 충족하는 기본 오브젝트만 반환합니다. 체인 필터를 사용하여 작성된 대로 각 조건과 일치하는 기본 오브젝트의 교집합을 반환합니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat, Inc.