如何使用重新归档删除附件 活动记录::记录未找到.



我正在尝试删除/销毁使用重新归档 gem 上传的附件,但当前收到以下错误, ActiveRecord::RecordNotFound in ImagesController#destroy

Couldn't find Image with 'id'=

images_controller.rb

def destroy
        # binding.pry
        @image = Image.find(params[:id])
        @image.destroy
        flash[:notice] = 'deleted'
        render 'new'
    end
    private
    def image_params
        params.require(:image).permit(:tshirt_image, :remove_tshirt_image)
    end

我尝试删除附件的表单/视图如下所示,

显示.html.erb

<h1>show.html.erb</h1>
<% debug(@image) %>
<%= image_tag attachment_url(@image, :tshirt_image, :fill, 300, 300, format: "jpg") %>
<%= form_for @image do |form| %>
  <%= form.label :tshirt_image %>
  <% form.attachment_field :tshirt_image %>
  <%= form.check_box :remove_tshirt_image %>
  <%= form.label :remove_tshirt_image %>
  <%= button_to "delete", @image, method: :delete %>

<% end %>
<p>test</p>

如果我正确阅读了您的代码,则表单的所有参数都将嵌套在:image键下(params[:image][:remove_tshirt_image]等)。

尝试:

@image = Image.find(params[:image][:id])

最新更新