単純にS3へのファイルアップロードした際のメモ。
準備編
Rails 5.2.0.alpha
を使用する。
下記ページのSetting up ActiveStorage for Rails
の項目に従ってGemfileの書き換えやDBのマイグレーション、active_storageのプロジェクトへのインストールを行う。
http://blog.jasonkim.ca/blog/2017/11/13/Using-ActiveStorage-Today/
storage.yml
bin/rails active_storage:install
を実行すると、config
以下にstorage.yml
ファイルが生成されるのでそこに必要事項を記入する。
今回はamazon以下に自分が管理しているS3のバケット情報を記入。
amazon:
service: S3
access_key_id: XXXXXXXXXXXXXXXXXX
secret_access_key: XXXXXXXXXXXXXXXXXX
region: ap-northeast-1
bucket: your.bucket.name
アップロード
下記の用なコードで単純なアップロードが可能。
ActiveStorage::Blob.create_after_upload!(io: StringIO.new('qwerty'), filename: 'test_file')
上記コードでファイル内容がqwerty
となるファイルをアップロードしている。
S3のバケット上でのファイル名はznzAavPtDwXdqzYoP4eAPWgy
のようなstandard secure-token format
となる。