5
我正在使用回形針gem將文件附加到模型。使用回形針上傳文件時,僅在保存模型時才保存該文件。因此,如果模型無效,則上傳的文件不會被保存。有沒有辦法臨時保存上傳的文件,以便用戶在模型無效時不必上傳相同的文件?使用Rails回形針寶石,如果模型無效,如何暫時保存上傳的文件
我正在使用回形針gem將文件附加到模型。使用回形針上傳文件時,僅在保存模型時才保存該文件。因此,如果模型無效,則上傳的文件不會被保存。有沒有辦法臨時保存上傳的文件,以便用戶在模型無效時不必上傳相同的文件?使用Rails回形針寶石,如果模型無效,如何暫時保存上傳的文件
定義before_save
方法來檢查,如果對象是有效的, 如果不將文件保存到磁盤上,給它一個唯一的名稱(創建一些散列)
提出,在形式,你在隱藏發送回現場
形式刪除上傳字段現在
在before_save
方法檢查的其他分支,如果有一個hidden_field
previous_upload或不過你的名字 如果沒有加載圖片,並將其分配給papercli p屬性,可以算出其餘的
attr_accessor :previous_upload
def before_save
if valid?
if previous_upload
paperclip_file = #Load paperclip_file from /tmp
else
previous_upload = nil
end
else
previous_upload = "Some unique key for each upload like ip and time or such"
# Save paperclip_file with name previous_upload to /tmp
end
end
感謝您的想法。我會嘗試一下 :) – gsmendoza 2009-06-11 07:23:58