1

Я ищу предложения о том, как отслеживать количество тегов, связанных с определенным объектом в Rails. Я использую act_as_taggable_on, и он работает нормально. То, что я хотел бы сделать, это поиск всех объектов, у которых нет тегов, предпочтительно через область, то есть Object.untagged.allПредложения о том, как отслеживать подсчет тегов для определенного объекта

Моя первая мысль заключалась в использовании обратного вызова after_save для обновления атрибута taggings_count, в моей модели:

def update_taggings_count 
    self.taggings_count = self.tag_list.size 
    self.save 
end 

К сожалению, это делает очевидным то, что я поставил меня в бесконечный цикл. Мне нужно использовать обратный вызов after_save, потому что tag_list не обновляется до тех пор, пока не будет сохранен основной объект.

Буду признателен за любые предложения, поскольку я нахожусь на грани переливания собственной системы тегов.

С уважением

Робин

ответ

0

Я сделал то же самое, но поставить функцию в before_save, как и

scope :untagged, where("taggings_count = 0") 
before_save :update_taggings_count 

def update_taggings_count 
    self.taggings_count = tag_list.size 
end 
Смежные вопросы