2016-04-08 10 views
1

私は数多くのアイテムを一覧表示するためのGraphQl APIを持っており、それを完全に照会することができます。 今、私はそのリストのサブセットを照会したいのですが、 'GraphQL "等しくない"演算子ですか?

{ 
    items(status: !"Unwanted"){ 
    id 
    } 
} 

その感嘆符が明らかに動作しませんが、それは私が後だものを示しています

は例えば、私はこのような何かを照会します。 オンラインに関する情報が見つかりません。

誰かがこれを行う方法を知っていますか? 私は本当に1つの不要な値を除外するのではなく、すべての可能な値を列挙しなければならないのは嫌です。これは本当に悪いデザインで、スケーラブルではありません。

ありがとうございました。

答えて

6

スキーマを定義(サーバーを実装)できる場合は、statusExceptのような2番目の引数をitemsフィールドに追加できます。次にresolveメソッドでstatusまたはstatusExceptが設定されているかどうかをチェックし、それに従ってアイテムを配信します。

サーバAPIは固定されていますが、クライアント上ですべてを取得してフィルタリングする以外は何もできません。

+1

感謝。私はそれがどのように簡単に動作するかを見ることができます。 GraphQLは本当に "not"の概念を持っていませんか?そのような目障りな脱落のようです。 – batjko

+1

@batijo GraphQLには検索の概念がありません。むしろGraphQLによって与えられたツールを使用して検索を実装する必要があります。 GraphQLは単なる言語仕様であり、特定のAPIやアプリケーションで検索がどのように機能するかについては中立です。 – freiksenet

+1

しかしそれはありません!これはクエリ言語です。これには、特定の値を検索するためのクエリパラメータがあります(ただし、バックグラウンドでスキーマによって実装される可能性があります)。だから、例えば私が探していればstatus = "New"である{status: "New"}}のように、status = "New"の概念を持たないのはなぜですか?追加する明白なもののようです。 – batjko

1

使用ne:先端のための

{ 
    items(status: {ne: "Unwanted"}){ 
    id 
    } 
} 
関連する問題