7

管理者がオプションで公開されている写真をアップロードできるレールアプリを作成しています。アップロード/保存プロセスには、Carrierwave gem と Fog gem および S3 を使用しています。問題は、これをすべて機能させるために、s3 バケットにアップロードされたすべてのファイルを公開する必要があることです。ファイルごとにファイルを公開/非公開にする方法はありますか? また、このファイルごとの細分性が可能である場合、(Carrierwave の自動サイズ変更によって作成された) イメージのバージョンまで拡張できますか?

現在、carrierwave イニシャライザに次の行があります。

  config.fog_public = true
4

2 に答える 2

7

実際、Carrierwave では非常にシンプルです。

あなたはこれを行うことができます:

class PrivateUploader < StandardUploader  

  @fog_public = false

または(テストされていませんが、完全に動作するはずです)これ:

class PrivateUploader < StandardUploader  


  def fog_public
    if local_condition
      true
    else
      false
    end
  end

:-)

私は DragonFly を試したことはありませんが、過去 2 か月間でいくつかの問題が Carrierwave で修正されたので、今まで見たどの製品よりもはるかに優れています。めちゃめちゃ柔軟。

//マット

于 2011-08-06T08:21:01.480 に答える