Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails PDF';未在rails 6活动存储器中显示_Ruby On Rails - Fatal编程技术网

Ruby on rails PDF';未在rails 6活动存储器中显示

Ruby on rails PDF';未在rails 6活动存储器中显示,ruby-on-rails,Ruby On Rails,我已成功加载PDF文件,但无法在浏览器上查看,它显示为损坏的图像。我正在使用开发环境 图像上传工作正常,但问题在于PDF文件 在控制台中显示如下: Started GET "/rails/active_storage/disk/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDRG9JYTJWNVNTSWhNWGc0Y25BNVkySnNOVGMyZUdvNGNqWnVaSGR1T1dodmFXZzVZUVk2QmtWVU9oQmthWE53YjNOcGRHbHZ

我已成功加载PDF文件,但无法在浏览器上查看,它显示为损坏的图像。我正在使用开发环境

图像上传工作正常,但问题在于PDF文件

在控制台中显示如下:

Started GET "/rails/active_storage/disk/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDRG9JYTJWNVNTSWhNWGc0Y25BNVkySnNOVGMyZUdvNGNqWnVaSGR1T1dodmFXZzVZUVk2QmtWVU9oQmthWE53YjNOcGRHbHZia2tpVldsdWJHbHVaVHNnWm1sc1pXNWhiV1U5SW0xaGMyOXZaQ0JFYjJOMWJXVnVkSE11Y0dSbUlqc2dabWxzWlc1aGJXVXFQVlZVUmkwNEp5ZHRZWE52YjJRbE1qQkViMk4xYldWdWRITXVjR1JtQmpzR1ZEb1JZMjl1ZEdWdWRGOTBlWEJsU1NJVVlYQndiR2xqWVhScGIyNHZjR1JtQmpzR1ZBPT0iLCJleHAiOiIyMDIwLTA3LTEyVDA5OjI4OjI0LjAwOFoiLCJwdXIiOiJibG9iX2tleSJ9fQ==--b39997964e1c004a10f563cdc5b48a5e98386df7/masood%20Documents.pdf?content_type=application%2Fpdf&disposition=inline%3B+filename%3D%22masood+Documents.pdf%22%3B+filename%2A%3DUTF-8%27%27masood%2520Documents.pdf" for 2.50.57.56 at 2020-07-12 09:23:36 +0000
Cannot render console from 2.50.57.56! Allowed networks: 127.0.0.0/127.255.255.255, ::1

Processing by ActiveStorage::DiskController#show as PDF
  Parameters: {"content_type"=>"application/pdf", "disposition"=>"inline; filename=\"masood Documents.pdf\"; filename*=UTF-8''masood%20Documents.pdf", "encoded_key"=>"eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDRG9JYTJWNVNTSWhNWGc0Y25BNVkySnNOVGMyZUdvNGNqWnVaSGR1T1dodmFXZzVZUVk2QmtWVU9oQmthWE53YjNOcGRHbHZia2tpVldsdWJHbHVaVHNnWm1sc1pXNWhiV1U5SW0xaGMyOXZaQ0JFYjJOMWJXVnVkSE11Y0dSbUlqc2dabWxzWlc1aGJXVXFQVlZVUmkwNEp5ZHRZWE52YjJRbE1qQkViMk4xYldWdWRITXVjR1JtQmpzR1ZEb1JZMjl1ZEdWdWRGOTBlWEJsU1NJVVlYQndiR2xqWVhScGIyNHZjR1JtQmpzR1ZBPT0iLCJleHAiOiIyMDIwLTA3LTEyVDA5OjI4OjI0LjAwOFoiLCJwdXIiOiJibG9iX2tleSJ9fQ==--b39997964e1c004a10f563cdc5b48a5e98386df7", "filename"=>"masood Documents"}
Completed 200 OK in 1ms (ActiveRecord: 0.0ms | Allocations: 377)
rails active_storage:install

rails db:migrate
我遵循以下所有步骤

Started GET "/rails/active_storage/disk/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDRG9JYTJWNVNTSWhNWGc0Y25BNVkySnNOVGMyZUdvNGNqWnVaSGR1T1dodmFXZzVZUVk2QmtWVU9oQmthWE53YjNOcGRHbHZia2tpVldsdWJHbHVaVHNnWm1sc1pXNWhiV1U5SW0xaGMyOXZaQ0JFYjJOMWJXVnVkSE11Y0dSbUlqc2dabWxzWlc1aGJXVXFQVlZVUmkwNEp5ZHRZWE52YjJRbE1qQkViMk4xYldWdWRITXVjR1JtQmpzR1ZEb1JZMjl1ZEdWdWRGOTBlWEJsU1NJVVlYQndiR2xqWVhScGIyNHZjR1JtQmpzR1ZBPT0iLCJleHAiOiIyMDIwLTA3LTEyVDA5OjI4OjI0LjAwOFoiLCJwdXIiOiJibG9iX2tleSJ9fQ==--b39997964e1c004a10f563cdc5b48a5e98386df7/masood%20Documents.pdf?content_type=application%2Fpdf&disposition=inline%3B+filename%3D%22masood+Documents.pdf%22%3B+filename%2A%3DUTF-8%27%27masood%2520Documents.pdf" for 2.50.57.56 at 2020-07-12 09:23:36 +0000
Cannot render console from 2.50.57.56! Allowed networks: 127.0.0.0/127.255.255.255, ::1

Processing by ActiveStorage::DiskController#show as PDF
  Parameters: {"content_type"=>"application/pdf", "disposition"=>"inline; filename=\"masood Documents.pdf\"; filename*=UTF-8''masood%20Documents.pdf", "encoded_key"=>"eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDRG9JYTJWNVNTSWhNWGc0Y25BNVkySnNOVGMyZUdvNGNqWnVaSGR1T1dodmFXZzVZUVk2QmtWVU9oQmthWE53YjNOcGRHbHZia2tpVldsdWJHbHVaVHNnWm1sc1pXNWhiV1U5SW0xaGMyOXZaQ0JFYjJOMWJXVnVkSE11Y0dSbUlqc2dabWxzWlc1aGJXVXFQVlZVUmkwNEp5ZHRZWE52YjJRbE1qQkViMk4xYldWdWRITXVjR1JtQmpzR1ZEb1JZMjl1ZEdWdWRGOTBlWEJsU1NJVVlYQndiR2xqWVhScGIyNHZjR1JtQmpzR1ZBPT0iLCJleHAiOiIyMDIwLTA3LTEyVDA5OjI4OjI0LjAwOFoiLCJwdXIiOiJibG9iX2tleSJ9fQ==--b39997964e1c004a10f563cdc5b48a5e98386df7", "filename"=>"masood Documents"}
Completed 200 OK in 1ms (ActiveRecord: 0.0ms | Allocations: 377)
rails active_storage:install

rails db:migrate
在模型中:

has_one_attached :main_image
params.require(:document).permit(:main_image )
<div class="field">
    <%= form.label :main_image %>
    <%= form.file_field :main_image %>
</div>

<%= image_tag @document.main_image, style:"width: 100%;" %>
在控制器中:

has_one_attached :main_image
params.require(:document).permit(:main_image )
<div class="field">
    <%= form.label :main_image %>
    <%= form.file_field :main_image %>
</div>

<%= image_tag @document.main_image, style:"width: 100%;" %>
在视图中:

has_one_attached :main_image
params.require(:document).permit(:main_image )
<div class="field">
    <%= form.label :main_image %>
    <%= form.file_field :main_image %>
</div>

<%= image_tag @document.main_image, style:"width: 100%;" %>

欢迎提出任何建议


提前感谢。

首先,您使用的是
图像\u标签
来呈现PDF文件,这是不可能的。这就是为什么它在HTML中显示损坏的图像

如果确实要预览PDF文件,请将该文件的服务url嵌入iframe中。以下是如何做到这一点

<iframe src="<%= rails_blob_path(@document.main_image, disposition: :inline) %>" height="200" width="300"></iframe>


如果有效,请告诉我。

谢谢您的回复。我得到了错误;ActionView::Template::Error(错误的URI(不是URI?):nil)我通过用rails\u blob\u路径替换服务\u url编辑了答案。请让我知道此工作是否在框架内工作,我以内联方式进行了处理,我们是否可以在没有框架的情况下像图像一样显示它,在heroku上的生产中如何?是的,您可以通过将frameBorder属性设置为0来删除边框。即frameBorder=“0”。它在heroku也很有效。非常感谢。