我在我的项目中使用了Act_as_taggable Gem,但我的标签中有很多混乱:我有大约10000个标签,其中6000个标签只使用一次。
我在10000个标签上自动完成并自动完成非常慢。
清理只使用一次的标签的方法是什么?
答案 0 :(得分:0)
你在使用什么版本的act_as_taggable?我是最新版本,我有两张桌子:
taggings -> id, tag_id, taggable_id, taggable_type, tagger_id, tagger_type, context, created_at
tags -> id, name, taggings_count
从tags.taggings_count中,您可以获得标签使用频率的数量。您可以删除仅使用一次的标记,但请确保您还删除引用它的标记中的条目以保持其一致(tags.id == taggable.tag_id)。 还要确保你在tags.name上有一个索引(默认情况下应该这样,但要仔细检查)。
更新:
删除标签?你想在你的应用程序中执行此操作吗?即列出页面上的所有标签并有一个删除按钮?或者你打算通过手工制作的声明在sql控制台中手动删除它?我建议使用第一个选项,因为它更干净简单:看看Usage Section of act_as_taggable_on - 它显示了如何删除标签。