Appsync 및 GraphQL : 중첩 된 값으로 목록을 필터링하는 방법

Kwhitejr

기본 스키마에서 Amplify가 생성 한 Appsync API가 있습니다. Article모델하는 category필드가 중첩되는 metadata분야. 카테고리별로 필터링 된 기사 목록을 제공하는 쿼리를 작성하고 싶습니다. 중첩 된 값을 필터링하는 방법이 명확하지 않습니다. 비슷한 질문을 보았지만 유사한 대답이 작동하지 않았습니다.

AWS GraphQL 변환 스키마

type Article @model {
  id: ID!
  title: String!
  description: String!
  text: String!
  metadata: ArticleMetadata!
}

type ArticleMetadata {
  category: Category!
  lastModified: String!
  creationDate: String!
}

enum Category {
  javascript
  java
  ruby
  python
  haskell
}

생성 된 목록 쿼리

export const listArticles = `query ListArticles(
  $filter: ModelArticleFilterInput
  $limit: Int
  $nextToken: String
) {
  listArticles(filter: $filter, limit: $limit, nextToken: $nextToken) {
    items {
      id
      title
      description
      text
      metadata {
        category
        lastModified
        creationDate
      }
    }
    nextToken
  }
}
`;

필터 쿼리 실패

query listArticlesByCategory($category: String!) {
  listArticles(filter: {category: {eq: $category}}) { 
    items {
      title
      description
      text
      metadata {
        category
        creationDate
        lastModified
      }
    }
  }
}

Appsync 콘솔 오류는 categoryin filter: {category: ... }이 알 수없는 필드 임을 나타냅니다 .

Aaron_H

기본적으로 Amplify codegen은 최상위 필터에서만 작동합니다. 이를 확장하여 ArticleMetadata에 중첩 된 속성에 대한 필터를 포함 할 수 있습니다.

ModelArticleFilterInput카테고리 필드를 포함하도록 유형 을 보강해야 합니다. 아티클 테이블의 메타 데이터 필드가 DynamoDB 맵에서 지원된다고 가정하면 맵 값을 기준으로 필터링 할 수 있습니다. metadata.category = :category필터 인수에 카테고리 값이있을 때 와 같은 것을 포함하는 필터 표현식을 추가하려면 listArticles 리졸버의 요청 매핑 템플릿 VTL을 수정해야합니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

EF Core 중첩 된 다 대다 목록을 다른 목록으로 필터링하는 방법

중첩 된 키 값 쌍을 반복하고 배열 값을 기준으로 필터링하는 방법

하위 목록의 값을 기준으로 중첩 된 목록 필터링

중첩 된 배열 값을 기준으로 값을 필터링하는 방법은 무엇입니까?

중첩 된 목록을 사전으로 변환하는 방법

AWS AppSync의 중첩 필드에서 쿼리로 필터링하는 방법

JavaScript : 객체 2 수준 깊이에 중첩 된 값으로 배열을 필터링하는 방법

linq 쿼리로 중첩 목록을 필터링하여 적절하게 필터링된 목록의 필터링된 목록으로 끝낼 수 있는 방법이 있습니까?

중첩 된 subMap으로 subMap 목록을 찾는 방법

중첩된 URL 목록을 필터링하는 방법은 무엇입니까?

중첩 된 사전 및 목록 목록을 작성하는 방법

Kotlin : 중첩 된 목록으로 목록을 매핑하는 방법

Kotlin : 중첩 된 목록으로 목록을 매핑하는 방법

중첩 된 정수 목록을 목록으로 분할하는 방법

중첩 된 목록을 더 작은 중첩 된 목록으로 분할하는 방법

중첩된 OR 및 중첩된 AND를 기반으로 데이터 프레임을 쿼리하는 우아한 방법

중첩 된 딕셔너리 키와 값을 유형 및 변수의 플랫 목록으로 플랫 화하는 방법은 무엇입니까?

중첩 된 키 / 값 및 중첩 된 목록을 json으로 병합

필터링 된 값을 0으로 유지하면서 Python 목록을 필터링하는 방법

Dapper로 중첩 된 개체 목록을 매핑하는 방법

중첩된 사전에 값 및 새 키 목록을 추가하는 방법은 무엇입니까?

Django에서 쿼리 셋의 값으로 중첩 된 사전을 목록으로 채우는 방법

Java8-중첩 된 맵을 내부 맵의 키 값으로 수집 된 중첩 된 맵 목록으로 변환하는 방법

Javascript의 중첩 값을 기반으로 배열을 필터링하는 방법

Retrofit 2.3은 키와 값으로 중첩 된 jsonObject 및 다중 배열을 구문 분석 할 수있는 방법

다른 배열을 기반으로 중첩 된 배열로 객체 배열을 필터링하는 방법

C # 중첩 된 사전을 값으로 정렬하는 방법

Angular에서 제공된 값을 기반으로 중첩 된 json에서 특정 json 키 값을 필터링하는 방법

Ramda : 중첩 배열의 값을 기준으로 필터링하는 방법

TOP 리스트

  1. 1

    C # 16 진수 값 0x12는 잘못된 문자입니다.

  2. 2

    Matlab의 반복 Sortino 비율

  3. 3

    Python의 csv 파일에서 첫 번째 열 삭제

  4. 4

    개체 참조가 개체의 인스턴스로 설정되지 않았습니까? (예외 오류 ~ ASP.NET MVC)

  5. 5

    atob은 인코딩 된 base64 문자열을 디코딩하지 않습니다.

  6. 6

    EventEmitter <string>의 컨텍스트 'this'가 Observable <string> 유형의 'this'메서드에 할당되지 않았습니다.

  7. 7

    병합 셀을 사용하여 워크 시트의 데이터 필터링

  8. 8

    PhpStorm 중단 점에서 변수 값을 볼 수 없습니다.

  9. 9

    jQuery에서 이벤트 핸들러를 제거하는 가장 좋은 방법은 무엇입니까?

  10. 10

    `@ Transactional`이 있음에도 불구하고 이러한 데이터베이스 수정 사항이 롤백되지 않는 이유는 무엇입니까?

  11. 11

    ssh를 사용하여 원격에서 로컬로 파일 복사

  12. 12

    종속 사용자 정의 Lightning 선택 목록 Level2 및 Level3을 설정한 다음 Lightning 구성 요소에서 Level2를 재설정하지만 Level2 캐시 데이터가 저장됨

  13. 13

    2 개의 이미지를 단일 평면 이미지로 결합

  14. 14

    팝업처럼 위젯을 표시하는 방법

  15. 15

    [해결] 쿠키 설정 SameSite = Chrome / JSP, JAVASCRIPT에서 작동하지 않습니다.

  16. 16

    버튼 클릭을 기반으로 특정 CSS 클래스를 추가하는 방법은 무엇입니까?

  17. 17

    React 구성 요소가 자동으로 초기 상태로 다시 렌더링됩니다.

  18. 18

    연결된 서버 쿼리는 작동하지만 동일한 OPENQUERY는 "sys.servers에서 서버 'SERVER'를 찾을 수 없습니다.

  19. 19

    파일 2의 파일 1에서 동일한 줄을 조건으로 바꿉니다.

  20. 20

    아이디어 Intellij : 종속성 org.json : json : 20180813을 찾을 수 없음, maven에서 org.json 라이브러리를 가져올 수 없음

  21. 21

    상황에 맞는 메뉴 색상

뜨겁다태그

보관