首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >载波+ Fog+缓存

载波+ Fog+缓存
EN

Stack Overflow用户
提问于 2015-03-04 01:01:43
回答 1查看 1K关注 0票数 0

场景:我们有一些用户在网站上谁已经上传了他们的网站徽标。最近,我们改变了这个标志的尺寸,并希望所有帐户都能反映这一变化(我们也从我们的应用程序中删除了retina_rails )。因此,我们计划做一个迁移,以删除视网膜轨道,同时循环通过每个帐户,并重新上传的标志,以正常化跨越所有的标志。

目前,这是迁移的样子:

代码语言:javascript
复制
class RemoveRetinaDimensionsFromAccounts < ActiveRecord::Migration
  def change
    remove_column :accounts, :retina_dimensions, :text
  end

  ActsAsTenant.configure.require_tenant = false
  Account.all.each do |account|
    if account.logo?
        account.logo.cache_stored_file!
        account.logo.retrieve_from_cache!(account.logo.cache_name)
            account.logo.recreate_versions!(:small, :small)
            account.save!
        end
  end
  ActsAsTenant.configure.require_tenant = true
end

这就是我们的carrierwave.rb文件的样子:

代码语言:javascript
复制
CarrierWave.configure do |config|
  if Rails.env.test?
    config.storage = :file
    config.enable_processing = false

  elsif Rails.env.development?
    config.storage = :file
    config.cache_dir = "#{Rails.root}/tmp/uploads"

  elsif Rails.env.staging?
    config.storage = :fog
    config.cache_dir = "#{Rails.root}/tmp/uploads"
    config.fog_credentials = {
      :provider               => 'AWS',                                           # required
      :aws_access_key_id      => Rails.application.secrets.aws_access_key_id,     # required
      :aws_secret_access_key  => Rails.application.secrets.aws_secret_access_key, # required
      :region                 => 'us-west-2'                                      # optional, defaults to 'us-east-1'
    }
    config.fog_directory  = 'blvd-staging'                                        # required
    config.fog_public     = false 
 end
end

我试着遵循这个链接https://github.com/carrierwaveuploader/carrierwave/wiki/How-to%3A-Recreate-and-reprocess-your-files-stored-on-fog中提到的建议,但是它不起作用。我已经进行了测试,以确保缓存正在保存文件,而且确实如此。但是,当我尝试和retrieve_from_cache!我无法这样做(因为缓存的文件没有名称)。

这就是我缓存的文件的样子:

tmp上传#

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-04 23:03:15

结果,我没有在迁移中的变更块中运行所需的代码块,所以代码永远不会被执行。

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

https://stackoverflow.com/questions/28844957

复制
相关文章

相似问题

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