Kai*_*des 3 ruby ruby-on-rails acts-as-taggable-on ruby-on-rails-4
我已按照https://github.com/mbleigh/acts-as-taggable-on/wiki上的说明进行操作,并在 config/initializers/acts_as_taggable_on.rb 中放入
ActsAsTaggableOn.remove_unused_tags = true
Run Code Online (Sandbox Code Playgroud)
然而它没有用。我也尝试过与其他宝石类似的以下操作:
ActsAsTaggableOn.setup do |config|
config.remove_unused_tags = true
end
Run Code Online (Sandbox Code Playgroud)
它也不起作用。也许它需要包含一个模块?任何帮助将不胜感激。
我有一个耙子任务。
# lib/tasks/tag_cleaner.rake
# run using 'RAILS_ENV=development rake tag_cleaner:delete_unused'
namespace :tag_cleaner do
desc "delete unused tags"
task :delete_unused => :environment do
ActsAsTaggableOn::Tag.joins(
"LEFT JOIN taggings on taggings.tag_id = tags.id").where("taggings.id is null").delete_all
end
end
Run Code Online (Sandbox Code Playgroud)
当我需要的时候我就使用它。
或者
# lib/tasks/tag_cleaner.rake
# run using 'RAILS_ENV=development rake tag_cleaner:delete_unused'
namespace :tag_cleaner do
desc "delete unused tags"
task :delete_unused => :environment do
ActsAsTaggableOn::Tag.joins(
"LEFT JOIN taggings on taggings.tag_id = tags.id").where("taggings.id is null").delete_all
ActsAsTaggableOn::Tagging.joins(
"LEFT JOIN tags on tags.id = taggings.tag_id").where("tags.id is null").delete_all
end
end
Run Code Online (Sandbox Code Playgroud)
如果你需要双向走。即,您正在像我一样玩耍,并且从标签中删除了一些,从标签中删除了一些,并且需要清理两侧。
| 归档时间: |
|
| 查看次数: |
1070 次 |
| 最近记录: |