GitHub GraphQL API를 사용하여 일부 응답 데이터를 필터링해야하지만 너무 중첩되어 있습니다. 아래는 내가 다루고있는 응답의 요약본입니다.목록에서 깊이 중첩 된지도를 필터링하려면 어떻게해야합니까?
%{"name" => "repo",
"pullRequests" => %{
"nodes" => [%{
"reviews" => %{
"nodes" => [
%{"author" => %{"login" => "FOO"}, "state" => "COMMENTED"},
%{"author" => %{"login" => "BAR"}, "state" => "COMMENTED"},
%{"author" => %{"login" => "BAR"}, "state" => "COMMENTED"},
%{"author" => %{"login" => "BAR"}, "state" => "COMMENTED"},
%{"author" => %{"login" => "BAR"}, "state" => "COMMENTED"},
%{"author" => %{"login" => "FOO"}, "state" => "COMMENTED"},
%{"author" => %{"login" => "FOO"}, "state" => "COMMENTED"},
%{"author" => %{"login" => "BAR"}, "state" => "COMMENTED"},
%{"author" => %{"login" => "BAR"}, "state" => "COMMENTED"}
]
}
}]
}
}
내가 달성하고자하는 것은 로그인을 기준으로 리뷰 작성자를 필터링 할 수 있다는 것입니다. 어떻게 노드의 일부 맵을 필터링하여 다음과 같이 끝낼 수 있습니까?
%{"name" => "repo",
"pullRequests" => %{
"nodes" => [%{
"reviews" => %{
"nodes" => [
%{"author" => %{"login" => "FOO"}, "state" => "COMMENTED"},
%{"author" => %{"login" => "FOO"}, "state" => "COMMENTED"},
%{"author" => %{"login" => "FOO"}, "state" => "COMMENTED"},
]
}
}]
}
}
처음에는 유효하지 않은 묵주 용어입니다. – mudasobwa