J'essaye de créer une "recherche avancée", où je peux laisser l'utilisateur rechercher seulement des champs spécifiques de mon index. Pour cela, j'utilise une requête booléenne:Dans Zend Lucene, comment changer le champ recherché par une requête?
$sq1 = Zend_Search_Lucene_Search_QueryParser::parse($field1); // <- provided by user
$sq2 = Zend_Search_Lucene_Search_QueryParser::parse($field2); // <- provided by user
$query = new Zend_Search_Lucene_Search_Query_Boolean();
$query->addSubquery($sq1, true);
$query->addSubquery($sq2, true);
$index->find($query);
Comment puis-je préciser préciser que sq1 recherchera le champ « foo », et SQ2 cherchera « bar » terrain? Je pense que je devrais analyser les requêtes différemment pour l'effet (parce que l'utilisateur pourrait taper un nom de champ), mais les docs mentionnent seulement le QueryParser pour joindre des requêtes d'entrée d'utilisateur avec des requêtes d'API.
A travaillé comme par magie! – Randell