2017-11-14 17 views
2

私のpaperclipクラスにS3を統合しようとしました。 私の地元の人や同僚の人にはうってつけでしたが、それは生産には向いていません。私は次のエラーNoMethodError (undefined method 'match' for nil:NilClass):を取得していますPaperclip S3問題、一致するメソッドがありません

has_attached_file :image, 
storage: :s3, 
:path => ":imageable_type/:imageable_id/:filename", 
s3_credentials: { 
     access_key_id: ENV["AWS_KEY"], 
     secret_access_key: ENV["AWS_SECRET"], 
     bucket: ENV["S3_BUCKET"] 
}, 
s3_region: ENV["S3_REGION"] 

はここに私のイメージクラスのクリップコードです。クイック検索では、s3_regionには関連していないことが示されています。 私の開発サーバーで動作し、s3_regionが私の設定に含まれています。

私は補間と環境変数を定義しました。環境変数は、レールコンソールで動作しているので、私が推測する問題ではありません。

何か助けていただければ幸いです。

答えて

0

プロダクションにどのように展開していますか?

たとえば、Herokuを使用する場合は、本番サーバーで変数envを別に用意する必要があります。あなたがAWSを使用している場合は、ダッシュボードや端子を介してこれを行うことができ

What are the other heroku environment variables?

https://devcenter.heroku.com/articles/config-vars

その後、

https://docs.docker.com/compose/link-env-deprecated/

ここで読むドッキングウィンドウのためにここに

http://docs.aws.amazon.com/lambda/latest/dg/env_variables.html

読みます個の

ENV変数は、環境変数についての詳細を読み、それらを

を設定する方法

を実行している ~/.bash_profileまたはすべてのUbuntuのサーバー/コンテナの ~/.bashrcのようなファイルで定義されています
関連する問題