Ruby on rails Rails 3 Carrierwave如何删除作为模型属性的文件?
我跟随了Railcast,效果很好。但后来我用ActiveAdmin实现了它,因此使用了Formtastic(ActiveAdmin使用Formtastic作为表单) 所以我可以上传和下载文件 问题是,当链接到删除链接时,Carrierwave似乎希望使用模型而不是模型的属性 我有模型发货,它有hbl_pdf属性(pdf文档)。这是我的删除链接Ruby on rails Rails 3 Carrierwave如何删除作为模型属性的文件?,ruby-on-rails,ruby,formtastic,carrierwave,activeadmin,Ruby On Rails,Ruby,Formtastic,Carrierwave,Activeadmin,我跟随了Railcast,效果很好。但后来我用ActiveAdmin实现了它,因此使用了Formtastic(ActiveAdmin使用Formtastic作为表单) 所以我可以上传和下载文件 问题是,当链接到删除链接时,Carrierwave似乎希望使用模型而不是模型的属性 我有模型发货,它有hbl_pdf属性(pdf文档)。这是我的删除链接 row("HBL") { link_to 'remove', shipment.hbl_pdf, :confirm => "Are you sur
row("HBL") { link_to 'remove', shipment.hbl_pdf, :confirm => "Are you sure?", :method => :delete }
我得到错误<代码>PdfUploader的未定义方法模型\名称:类
我不想删除货物,只想删除文档。你为什么不打电话给
remove\u hbl\u pdf是否改为在装运对象上使用代码>?请阅读本手册的“删除上载的文件”部分:
在你的控制器里
def remove_shipment_pdf
shipment = Shipment.find_by_id(params[:shipment_id])
shipment.remove_hbl_pdf! if shipment
# respond with something or redirect
end
remove命令的语法基于属性的名称。因此,如果您的模型属性名称是.hbl\u pdf
,那么它就是remove\u hbl\u pdf如果它是.image
,那么它就是删除图像代码>
def remove_shipment_pdf
shipment = Shipment.find_by_id(params[:shipment_id])
shipment.remove_hbl_pdf! if shipment
# respond with something or redirect
end