首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >清除用户头像

清除用户头像
EN

Stack Overflow用户
提问于 2013-03-05 18:39:05
回答 2查看 86关注 0票数 1

我通常会从我们的生产数据中获取一个db转储来测试和修复bug。因为我们允许用户上传他们自己的头像,所以当我尝试加载一个使用用户头像的页面时,我得到了很多404。这会影响我的测试时间,所以我想从数据库中清除所有用户的头像。有什么简单的方法可以做到这一点吗?我在用回形针。

代码语言:javascript
复制
User.rb

has_attached_file :avatar
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-05 18:40:25

这个问题最好使用rake任务来解决。

lib/tasks中创建名为avatars.rake的文件

代码语言:javascript
复制
desc "Clear all avatars"
task clear_avatars: :environment do
  User.find_each do |user|
    user.avatar = nil 
    user.save(validate: false)
  end 
end

然后只需在终端上调用rake clear_avatars

票数 0
EN

Stack Overflow用户

发布于 2013-03-05 18:45:43

正如jvnill所说,您应该手动删除该数据。

但是,如果您有很多用户,遍历所有用户将花费大量时间。

代码语言:javascript
复制
task clear_avatars: :environment do
  User.update_all 'avatar = NULL'
end

您只执行了一个SQL查询并删除了所有的头像。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15221666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档