Question

J'utilise Solr pour un catalogue de produits construit sur asp.net avec solrnet et tout fonctionne assez bien jusqu'à présent. Je dois étendre les résultats de la recherche en ajoutant une option de regroupement à elle.

D'abord, je vais vous expliquer comment les regards de schéma comme:

 <field name="product_id" type="string" indexed="true" stored="true" required="true" /> 
 <field name="name" type="string" indexed="true" stored="true"/>
 <field name="merchant" type="string" indexed="true" stored="true"/>
 <field name="merchant_id" type="int" indexed="false" stored="true"/>
 <field name="merchant_logo" type="string" indexed="false" stored="true"/>
 <field name="brand" type="string" indexed="true" stored="true"/>
 <field name="brand_id" type="int" indexed="false" stored="true"/>
 <field name="group_id" type="int" indexed="true" stored="true"/>
 <field name="group_name" type="string" indexed="true" stored="true"/>
 <field name="has_group" type="boolean" indexed="true" stored="true"/>

Comme vous voyez les produits ci-dessus a un « groupe nom » « group_id » et aussi je suis indicateur booléen nommé « a groupe » sur mon schéma.

Voici quelques exemples de résultats produits

Product A – group id 1 - group Name 1 – has group true
Product B – group id 1 - group Name 1 – has group true
Product C – group id 2 - group Name 2 – has group true
Product D – group id 2 - group Name 2 – has group true
Product E – has group false
Product F – has group false

Mais quand je montre ces résultats, je dois montrer les produits avec des noms de groupe (ou ids) sur le dessus des résultats par son nom de groupe. Et les produits qui n'appartient pas à un groupe seront inscrites à la cote juste après les groupes.

Alors mes résultats devrait ressembler à:

Group Name 1
Group Name 2
Product E
Product F

En effet, je dois mettre en œuvre la mise en page et, donc autrement dit lorsque la recherche de quelqu'un pour un produit si un des produits contient des noms de groupe que je vais les énumérer sur des résultats et ensuite les autres produits.

Est-ce même possible? S'il est possible, qu'est-ce que je dois faire. Je l'ai déjà lu sur FieldCollapsing dans solr mais je ne sais pas si cela est la bonne ou pas http: // wiki.apache.org/solr/FieldCollapsing

Était-ce utile?

La solution

Oui, si vous voulez grouper sur tout l'index vous avez besoin du champ effondrer fonction. Le soutien de SolrNet pour cela est actuellement cassé, car il est une caractéristique inédite dans Solr et a beaucoup changé depuis la première mise en œuvre SolrNet. Voir http://code.google.com/p/solrnet/issues/ détail? id = 127 pour les détails et mises à jour.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top