【问题标题】:Debugging Paperclip on Heroku在 Heroku 上调试回形针
【发布时间】:2011-01-28 23:11:34
【问题描述】:

我正在 Heroku 上构建我的第一个应用程序并学习如何同时使用 rails。我已经构建了一个非常简单的模型,并在我的构建中添加了一个“Paperclip”宝石。它可以在我的本地主机上运行(尽管它似乎没有上传文件),但是当部署在 Heroku 上时,我刚刚得到的“新”表单:

很抱歉,出了点问题。

我们已收到有关此问题的通知 我们很快就会看一看。

我似乎不知道从哪里开始调试它。我的 Gemfile 包含行 gem 'paperclip'

【问题讨论】:

    标签: ruby-on-rails heroku


    【解决方案1】:

    Heroku 日志并不总是有帮助。

    出于您刚刚开始的目的,我建议您将 heroku 应用设置为“开发”模式,以便您可以看到详细的错误消息。

    heroku config # Should return a list of your current environment, including RACK_ENV=production
    heroku config:add RACK_ENV=development # now you'll get verbose error messages
    heroku config:add RACK_ENV=production # set this back when you're done debugging
    

    这应该会有所帮助!与我们分享错误消息,也许我们可以提供更多帮助。

    【讨论】:

      【解决方案2】:

      Heroku 有一个只读文件系统。这意味着 Paperclip 无法将上传的文件保存到 Heroku 中的任何位置。

      如果您希望能够将文件上传到托管在 Heroku 上的应用程序,那么您必须将文件作为二进制 blob 存储在数据库中,或者您必须使用单独的服务来存储文件。如果您正在寻找单独的服务,Paperclip 已内置支持与 Amazon S3 集成。

      查看相关Heroku docs

      【讨论】:

      • 永远是新手的证明。非常感谢。
      • Heroku 没有只读文件系统。它有一个ephemeral file system。您可以对其进行写入,但它是临时的并在应用程序回收时被丢弃。
      • @Chloe - 在回答时,Heroku 应用程序在只读文件系统中运行。正如您所说,它们现在在具有临时文件系统的容器中运行。
      【解决方案3】:

      您可以在命令行上运行heroku logs 来检索应用程序的日志文件。

      你肯定会在那里找到答案。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-12-26
        • 2011-07-31
        • 1970-01-01
        • 2014-01-29
        • 1970-01-01
        • 2011-08-09
        • 1970-01-01
        • 2017-06-23
        相关资源
        最近更新 更多