Ho esaminato i documenti in github: http://github.com/outoftime/sunspot per trovare soluzioni per l'evidenziazione, ma non sembra funzionare per me.Punti salienti di Sunspot non visualizzati
Il mio modello di lavoro ha qualcosa come questo blocco (omesso alcuni campi di proposito):
searchable do text :name string :name, :stored => true time :updated_at time :created_at time :expires_on
ho questo, che restituisce i risultati:
search = Sunspot.search(Job) do keywords 'Senior', :fields => "name", :highlight => true end => 0, :fl=>"* score", :"hl.simple.pre"=>"@@@[email protected]@@", :qf=>"name_text", :rows=>30, :"hl.simple.post"=>"@@@[email protected]@@", :hl=>"on", :q=>"senior", :fq=>["type:Job"], :defType=>"dismax"}>
e ottenere i successi come tale:
>> search.hits => [#, #, #, #, #, #, #, #, #, #, #, #, #, #, #, #, #]
e qui erano i risultati della query, visualizzando il nome:
>> search.results.collect{|x| x.name} => ["Senior Associate, Executive Membership", "Senior International Costing Analyst", "Senior Process Engineer", "Deputy Senior Process Manager", "Senior Engineer (Rotating Equipment)", "Senior Technical Expert, Indonesia", "Senior Combustion Engineer", "Senior Project Engineer/ Engineering Manager", "Senior Substructure Design Specialist, Bangladesh", "Senior Supervision Engineer (Superstructure), Bangladesh", "Senior Program and Strategy Development Advisor- Consultant", "Senior Associate (Natural Resource Management Specialist)", "Senior Manager (Agriculture Market Development, Afghanistan)", "Senior Material Engineer (Main Bridge), Bangladesh", "Senior Resident Engineer (Main Bridge), Bangladesh", "Senior Resident Engineer (Main Bridge), Bangladesh", "Senior Material Engineer (Main Bridge), Bangladesh"]
E qui viene il mio problema .. quando ricevo i punti salienti, nessuno è stato restituito:
>> search.hits.collect{|x| x.highlight(:name)} => [nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
e anche questo, non restituisce evidenziare successi:
>> search.hits.collect{|x| x.highlights} => [[], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []]
Am I mancano altri flag o argomenti?
Questo è il punto, ho provato questa risposta e ha funzionato. I campi che vuoi evidenziare devono essere memorizzati. Non dimenticare di reindex solr di nuovo .. e avere i campi dinamici necessari sul posto (come * _texts). – fifigyuri