Non ho ancora implementato una funzione di ricerca e mi sento un po 'bloccato. Ho una funzione di ricerca di Sunspot che trova risultati basati su parole chiave - questo funziona alla grande - ma ora voglio implementare la funzione di sfaccettatura multipla, ma non riesco nemmeno a capire come impostare una ricerca di faccie di base.Come posso impostare una ricerca di facet con una relazione molti a molti usando Sunspot?
Ho una relazione molti a molti (in binari non nella vita reale):
Classe Persone has_many: competenze,: attraverso => l'esperienza (e viceversa, ecc)
Class People < ActiveRecord::Base
has_many :skills, :through => experience
searchable do
text :first_name, :surname
end
end
Nel controller
@search = Sunspot.search(People)
facet :skill_ids
end
Questo è l'esempio di base non riesco a lavorare. Esso genera questo errore:
Sunspot::UnrecognizedFieldError: No field configured for People with name 'skill_ids'
Come faccio a creare il link per: skill_ids
penso Devo mancare qualche riferimento nel modello - ma nessun esempio posso trovare fare riferimento alla Ids di un rapporto. La maggior parte degli esempi che ho trovato utilizza colonne già presenti in quel modello quando si utilizza la funzionalità di sfaccettatura.
- Come posso eseguire l'implementazione di base?
- Come utilizzerei questo nella vista? Devo chiamare hits.facet e scorrere le abilità? Come apparirebbe il codice per visualizzarlo?
- Come seleziono più faccette da cercare?
- Devo inserire questo nella wiki della comunità?
Grazie per il vostro tempo!
Grazie! Non sono riuscito a trovare un riferimento a: più parti nella wiki o altrove - devono aver usato i termini di ricerca sbagliati o qualcosa del genere. Hai avuto la giusta idea di cosa intendessi per "selezionare più faccette da cercare" - in altre parole: filtrare per più selezioni. La wiki ora ha senso per me con una demo funzionante da testare! Proverò ad aggiungere nella funzionalità di filtro successiva: avrei ragione a pensare che posso creare un link_to e passare i parametri per ulteriori sfaccettature, o che è un modo lungo per aggirare? Grazie ancora! –