2015-04-06 19 views
0

我有一個簡單的表單,有一些數據要保存到數據庫,但在這個表單上我也有一個文件字段。什麼是保存數據前上傳文件的最佳地點

我想知道什麼是上傳文件的最佳位置。

我以爲這樣做beforeSave()但我沒有acces $this->request->data('file_name')beforeSave()

回答

0

BeforeSave用於預保存邏輯(驗證等)。你最好使用afterSave()來上傳文件。

+0

2 thigs,firt:on beforeSave()我還沒有訪問request-> save('file_name')。第二:保存後我不能上傳,因爲如果我的上傳失敗,我無法回滾保存 –

+0

此外,*還有*有效方案,您希望在保存數據庫記錄之前保存文件本身。例如,如果重要的是文件上傳以及一些檢查或預處理。 – burzum

0

您可以使用this plugin以及或它來看看它是怎麼做的。

https://github.com/burzum/cakephp-file-storage/tree/3.0

該插件允許您配置當你想存儲文件:

每個開發人員可能需要將文件存儲在不同的點或 之前對文件應用等操作或者在存儲之後。根據不同的情況,您可能希望在創建要附加到的記錄之前保存關聯文件 ,在 之類的其他場景中,您可能希望在此文檔中使用 之後。

該插件在保存之前使用事件來操作文件。

相關問題