gpt4 book ai didi

ruby-on-rails-3 - Rails 3 不在公用文件夹中查找 Assets On Show 方法

转载 作者:行者123 更新时间:2023-12-04 07:15:51 25 4
gpt4 key购买 nike

每当我尝试使用 image_tag 构建器显示图像时,在我的显示 View 中,rails 不会在我的显示 View 内的公共(public)文件夹中查找图像...

例如:

<%= image_tag "thumbnails/fish.jpg" %>

会产生这个:
ActionController::RoutingError (No route matches [GET] "/uploads/thumbnails/fish.jpg"):

我正在使用回形针 Gem 作为上传模型和 我将上传保存到与公共(public)文件夹不同的文件夹 出于安全原因,是的,这个显示 View 确实出现在上传 Controller 中......

在我的上传模型中,我使用这一行将上传内容保存到非公共(public)文件夹:
has_attached_file :upload,  :path => ":rails_root/:class/:id/:basename.:extension",
:url => ":rails_root/:class /:id/:basename.:extension"

耙路线:
upload GET    /uploads/:id(.:format)                                                                 {:action=>"show", :controller=>"uploads"}
PUT /uploads/:id(.:format) {:action=>"update", :controller=>"uploads"}
DELETE /uploads/:id(.:format) {:action=>"destroy", :controller=>"uploads"}
/download/:id(.:format) {:controller=>"uploads", :action=>"download"}

编辑
注意:如果我明确地制作一个 img 标签并将 src 指向我的图像,它在我的显示 View 上工作正常,所以我认为这不是权限问题。

最佳答案

答案相当简单,我不敢相信 Rails 会这么挑剔,但我需要在路径的开头包含一个正斜杠,如下所示:

"thumbnails/fish.jpg"

变成
"/thumbnails/fish.jpg"

我仍然很好奇为什么这只是非索引 View 的问题......

关于ruby-on-rails-3 - Rails 3 不在公用文件夹中查找 Assets On Show 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11215825/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com