自定义表情符号能否支持批量删除?

如果有很多表情符号,逐个删除工程量浩大。

You can look at Administrative Bulk Operations.

Something like this would work

remove=Post.where("raw like '%:some_emoji%'")
remove.each do |post|
  new_raw=post.raw.gsub(":some_emoji","")
  if new_raw != post.raw
            PostRevisor.new(post).revise!(
              post.user,
              { raw: new_raw },
              bypass_bump: true,
              edit_reason: "Remove emoji we no longer like",
              bypass_rate_limiter: true,
            )
  end
end

You should test it, but it does create edits so you can undo it.

If you don’t want edits you could instead of PostRevisor do post.raw=new_raw;post.save.

6 Likes

谢谢!这很有帮助

1 Like