cancel
Showing results for 
Search instead for 
Did you mean: 

champ de recherche

vjoussot_
Star Contributor
Star Contributor

Bonjour, avec studio je fabrique une content view pour un formulaire de recherche avancée. J'aimerai savoir si un champ texte pour permettre une recherche sur deux metadonnées différentes. Si oui comment faire ? Faut il fabriquer un widget spécifique ? Merci d'avance de votre aide.

5 REPLIES 5

Fred_Vadon
Star Contributor
Star Contributor

Bonjour,

Si je comprends bien, il vous faudrait sur une seul champ de recherche accéder à plusieurs métadonnées.

La meilleure solution est probablement de rajouter un index qui contiennent uniquement les informations de ces 2 métadonnées, comme ça vous pourrez l'utilisez comme un index full text classique mais qui ne pointera que sur ces 2 métadonnées.

Voici quelques pistes pour vous aider a faire tout ça :

Vous pouvez définir un nouvel index fulltext dans la configuration de votre repository, voir http://doc.nuxeo.com/x/hwQz

Vous pouvez également utiliser un template de configuration pour déployer proprement votre conf : http://doc.nuxeo.com/x/0AB9

Une fois la conf déployée, vous pourrez tester qu'elle fonctionne en faisant la requête à la main dans la recherche avancée. Puis pour l'utiliser dans une content view, il vous faudra utiliser le widget "generic search" (dans les advanced widgets) poour pouvoir référencer votre index custom.

vjoussot_
Star Contributor
Star Contributor

Bonjour, alors j'ai créé un index fulltext dans le fichier default-repository-config.xml que j'ai placé dans /templates/custom de mon serveur (j'avais déjà des fichiers dans custom pour mon paramétrage ldap). Mes index sont donc définis comme suit :

 <indexing>
      <fulltext analyzer="english">
        <index name="default">
          <!-- all props implied -->
        </index>
        <index name="title">
          <field>dc:title</field>
        </index>
        <index name="description">
          <field>dc:description</field>
        </index>
		<index name="title_subject">
          <field>dc:title</field>
		  <field>dc:subjects</field>
        </index>
      </fulltext>
    </indexing>

mon nouvel index s'appelle donc "title_subject".

Par contre, vous me dites de le tester en premier lieu dans une requete à la main, mais comment appelle t'on cet aindex ? j'ai testé : select * from Document where title_subject LIKE '%test%'

mais ça ne fonctionne pas : Failed to execute query: No such property: title_subject

Ensuite, comment appeler cet index dans studio ? Le widget type est bien text ? Merci de votre aide

la doc pour la requete

ok,

In fact this works fine.