【发布时间】:2019-11-13 09:09:16
【问题描述】:
我正在使用 active_storage 来处理图像,当我尝试删除附加到职位发布的图像时,我得到一个无路由匹配错误。
No route matches [GET] "/jobs/51/delete_image_attachment"
删除编辑表单中的操作
<% @job.images.each_with_index do |image, index| %>
<%= image_tag image, size: "120x120" %>
<%= link_to 'Delete', delete_image_attachment_job_url(image.id),
method: :delete,
data: { confirm: 'Are you sure?' } %>
<% end %>
作业控制器中的删除方法
def delete_image_attachment
@image = ActiveStorage::Attachment.find(params[:id])
@image.purge
redirect_back(fallback_location: job_path)
end
【问题讨论】:
-
你用的是什么版本的rails?
-
routes.rb中有delete_image_attachment方法吗? -
@Mark 使用 5.2.3
-
@Vasilisa 是的,方法在路线中
-
或者你没有导入rails-ujs。单击链接时是否会弹出 javascript 确认弹出窗口?
标签: ruby-on-rails rails-activestorage