要在ActiveStorage中生成“content disposition inline”类型的URL,需要使用Rails 5.2.0或更高版本,并使用“disposition”选项来指定所需的内容类型。
例如,在使用ActiveStorage的视图中,可以这样写:
<%= image_tag @post.image.variant(disposition: 'inline') %>
这将生成一个“content disposition inline”类型的URL。同样,使用视频或音频文件时,可以将“disposition”选项指定为“inline”:
<%= video_tag @post.video.variant(disposition: 'inline') %>
这将允许浏览器直接在内联模式下显示视频。
在使用ActiveStorage生成下载链接时,也可以使用相同的选项来指定内容类型和附件名称:
<%= link_to 'Download', url_for(@post.document.variant(disposition: 'attachment', filename: 'document.pdf'), disposition: 'attachment') %>
在这种情况下,将生成一个下载链接,内容类型为“application/pdf”,文件名为“document.pdf”。
所以,这就是解决ActiveStorage不生成“content disposition inline”类型的URL的方法。