Index By
この関数は、一般的なAPIパターンとして、サービスからフィールド値のリストがオブジェクトのリストとして返され、それぞれのオブジェクトにキーの1つとしてフィールド名、もう1つのキーとしてフィールドの値が含まれている場合のために設計されています。
この場合、この関数はそのリストを、各フィールドがキーと値のペアとして含まれているオブジェクトに変換するため便利です。 Index Byは、keyPathとvaluePathを指定することで、この問題を解決できます。 リストの各アイテムについて、この関数は新しいキーと値のペアを出力オブジェクトとして作成します。
たとえば、次のようなリストを考えます。
[ { "fieldname" : "x" , "myvalue" : "one" } , { "fieldname" : "y" , "myvalue" : "two" } , { "fieldname" : "z" , "myvalue" : "three" } ]
Index Byを使用し、keyPath="fieldname"とvaluePath="myvalue"を指定すると、次のオブジェクトが出力されます。
入力フィールド
-
list (オブジェクトのリスト):オブジェクトのリスト
-
keyPath (テキスト):オブジェクト内でキー名を持つキー(上の例では"fieldname")
-
valuePath (テキスト):値を含むキー(上の例では"myvalue")
出力フィールド
- output (オブジェクト):入力リストにより定義されているキーと値のペアを含むオブジェクト