【问题标题】:Paperclip S3 issue, no method match回形针 S3 问题,没有方法匹配
【发布时间】:2018-04-26 21:41:18
【问题描述】:

一直在尝试将 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 包含在我的配置中。

我已经定义了插值和环境变量。环境变量在 Rails 控制台中工作,所以我猜这不是问题。

任何帮助将不胜感激

【问题讨论】:

    标签: ruby-on-rails amazon-s3 paperclip


    【解决方案1】:

    您使用什么来部署到生产环境?

    例如,如果您使用 Heroku,则需要在生产服务器中单独维护 env 变量。您可以通过仪表板或终端执行此操作

    What are the other heroku environment variables?

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

    如果您使用 AWS,请阅读此处

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

    码头工人阅读这里

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

    环境变量在您正在运行的每个 ubuntu 服务器/容器的 ~/.bash_profile~/.bashrc 等文件中定义

    阅读有关环境变量以及如何配置它们的更多信息

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-09
      • 1970-01-01
      • 1970-01-01
      • 2012-09-15
      • 1970-01-01
      • 1970-01-01
      • 2012-07-07
      • 1970-01-01
      相关资源
      最近更新 更多