2016-11-16 7 views
1

の文字列からrefinementListを作成します。次のように私はデータを構造化した値

{ 
    "id": 12345, 
    "name": "Brother PJ-663 Direct A4 Thermal Mobile Printer", 
    "type": "Thermal printer", 
    "features": "USB, Mobile Print" 
}, 

を私がそうであるように、私は、(爆発)機能文字列のうち値に基づいてrefinementListウィジェットを作成しようと同じですこのアプローチが正しいかどうかは分かりません。

1つのinstantsearch.widgets.refinementListウィジェットを作成できるようにデータをどのようにフォーマットする必要がありますか?

また、代わりに_tagsを使用して、これらの機能をタグとして追加します。これを実現するにはどうすればよいでしょうか?

答えて

5

最良の方法は、配列としてインデックスとインデックスfeaturestype前(,によって分割)してデータを再フォーマットすることです:

{ 
    "id": 12345, 
    "name": "Brother PJ-663 Direct A4 Thermal Mobile Printer", 
    "type": [ 
    "Thermal printer" 
    ], 
    "features": [ 
    "USB", 
    "Mobile Print" 
    ] 
} 

その後Algolia設定でファセットの属性としてこれらの属性を設定し、あなたがに優れています行く。 instantsearch.jsrefinementList widgetを使用して、これらの属性に基づいて結果を絞り込むことができます。

_tagsここではフィルタリングに使用する2つの異なる属性があり、_tagsは簡単にはできません。

+0

私はすでにそれを試みましたが、[USB "、" Mobile Print "]をフィルタリングするオプションとして、" USB "と" Mobile Print "という2つのオプションを使いたいと思います。 – Strnm

+0

解決済み、問題は私がデータをアップロードしていた方法でした、ありがとう! – Strnm

+0

あなたはそれがうまくいってうれしい!ハッピーサーチ:) –

関連する問題