1

我想要做的是在我的 RoR 应用程序中显示一个 pdf 内联。我在我的资产文件夹中创建了一个名为投资组合的新文件夹,并在其中放置了一个 pdf 文件。这是我在控制器中所做的事情:

                def portfoliopdf

              send_file(Rails.root.join("assets", "portfolio", "Portfolio.pdf").to_s, :disposition => "inline", :type => "application/pdf")
              end

无论出于何种原因,我不断收到以下错误 - PagesController#portfoliopdf 中的 ActionController::MissingFile

无法读取文件 C:/Sites/inspired/assets/portfolio/Portfolio.pdf

我还创建了portfolio.html.erb 并将其留空。我还在 application.rb 中添加了这个(不确定是否需要调整)......

                config.assets.paths << Rails.root.join("app", "assets", "portfolio")
4

1 回答 1

2

编译资产后,您的 pdf 存储在这里

{Rails.root}/public/assets/Portfolio.pdf

它的网络路径是

/assets/Portfolio.pdf

因此您可能需要使用

Rails.root.join("public", "assets", "Portfolio.pdf")
于 2013-06-30T14:29:21.477 回答