Используя Algolia Gem, (https://github.com/algolia/algoliasearch-rails/blob/master/README.md) Я пытаюсь проиндексировать теги сообщения при обновлении сообщения.
После сохранения сообщения я установил Опубликовать на touch
все свои теги. Как упомянуто здесь: https://github.com/algolia/algoliasearch-rails/blob/master/README.md#propagating -the-change-from-a-nested-child
class Post < ApplicationRecord
after_save do
tags.each(&:touch)
end
end
И тегу присваивается значение index!
после касания.
module ActsAsTaggableOn
class Tag
include AlgoliaSearch
after_touch :index!
TAG_INDEX = "Tags_#{Rails.env}"
algoliasearch index_name: TAG_INDEX do
attribute :taggings_count, :name, :updated_at
searchableAttributes [
'name'
]
customRanking [
'desc(taggings_count)'
]
end
end
end
Но taggings_count
всегда равно 0.
Я подозреваю, что taggings_count
установлено после сохранения тега. Но я не уверен. Я хотел бы получить правильный taggings_count
в индексе при сохранении сообщения. Есть ли способ заставить это работать?