Sunspot / Solr / Rails: las asociaciones de modelos no se actualizan en el índice
Tengo un modelo Fieldnote en mi aplicación, que tiene muchas actividades asociadas a él a través de una tabla llamada: fieldnote_activities. Luego defino un índice de búsqueda de esta manera:
searchable :auto_index => true, :auto_remove => true do
integer :id
integer :user_id, :references => User
integer :activity_ids, :multiple => true do
activities.map(&:id)
end
text :observations
end
Y luego tengo un modelo de búsqueda para almacenar / actualizar búsquedas. El modelo de búsqueda también tiene sus propias asociaciones con actividades. Luego realizo mis búsquedas así:
@search = Search.find(params[:id])
@query = Fieldnote.search do |query|
query.keywords @search.terms
if @search.activities.map(&:id).empty? == false
query.with :activity_ids, @search.activities.map(&:id)
end
end
@fieldnotes = @query.results
Ahora todo esto funciona GENIAL. El problema es que si cambio qué actividades están asociadas con una nota de campo, los resultados de búsqueda no cambian porque parece que los índices para esa nota de campo no cambian. Tenía la impresión de que los indicadores: auto_index => true y: auto_remove => true cuando defino el índice de búsqueda realizarían un seguimiento de las nuevas asociaciones (o asociaciones eliminadas), pero parece que este no es el caso. ¿Cómo puedo solucionar esto