Capistrano部署

时间:2017-11-06 13:20:35

标签: ruby-on-rails paperclip

我有一个Rails 5.1应用程序,其中包含上传文档的功能。

我使用Paperclip(版本5.1)实现了上传功能。上传内容存储在Amazon S3上。上传文档最初工作正常,但是当我使用Capistrano将应用程序重新部署到生产服务器时,先前上载的图像会被破坏。当我查看production.log时,我看到这个RoutingError:

    F, [2017-11-06T14:07:26.682736 #446] FATAL -- : [012253d0-c103-4e57-8065-33830ad76b9b] ActionController::RoutingError

(No route matches [GET] "/system/absences/attest_pics/000/000/008/original/boekcover.jpg"):

在视图中我实现了文档的链接,如下所示:

        <% if absence.attest_pic.present? %>
        <td>
          <%= link_to "Download", absence.attest_pic.url %>
        </td>
        <% end %>

有没有人有这种行为的经验?

感谢您的帮助,

安东尼

1 个答案:

答案 0 :(得分:2)

查看服务器中的文件夹。如果路径your_app / current / public / system不存在,则需要更改文件:config / deploy.rb接受public / system

  

set:linked_dirs,fetch(:linked_dirs,[])。push('log','tmp / pids','tmp / cache','tmp / sockets','vendor / bundle','public / system “)