2017-11-14 7 views
2

S3를 내 paperclip 클래스에 통합하려고 시도했습니다. 내 로컬 및 동료의 작업에서 성공적으로 수행되었지만 실제 작업에서는 작동하지 않습니다.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"] 

나는 다음과 같은 오류 NoMethodError (undefined method 'match' for nil:NilClass):납니다 :

여기 내 이미지 클래스의 클립 코드입니다. 빠른 검색은 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 또는 모든 우분투 서버/컨테이너의 ~/.bashrc 같은 파일에 정의되어 있습니다