Je suis l'exemple suivant pour indexer des objets ActiveRecord et des objets associés dans Elasticsearch.
https://gist.github.com/karmi/3200212Méthode d'indexation des résultats dans ElasticSearch à partir d'objets ActiveRecord associés
Y a-t-il autre chose que je devrais prendre en compte si l'objet associé stocke les résultats d'une méthode? J'utilise en fait la gemme acts-as-taggable-on avec tag_list. Mon to_indexed_json ressemble à ce gars-là:
to_json(include: { items: {only: :name, methods: :tag_list} })
Quand je reconstruis avec ce qui suit,
rake environment tire:import CLASS=Business FORCE=true
il inclus avec succès les résultats de liste_balise pour chaque article. Suivant l'exemple, Business fait un pneu.update_index après avoir été touché. Cependant, lorsque j'ajoute un nouvel "Item", il ajoute avec succès tous les attributs de cet Item mais sans la tag_list.
Voici un lien vers mes deux modèles: https://gist.github.com/grumpasuarus/6661414
pouvez-vous coller votre fichier de modèle, y compris le code pour la recherche élastique. –
Mise à jour de la question avec un lien vers les deux modèles. – grumpasaurus