什么是在保存数据之前上传文件的最佳位置

时间:2015-04-06 17:38:02

标签: php cakephp-3.0

我有一个简单的表单,其中有一些数据要保存到数据库中,但在这个表单上我还有一个文件字段。

我想知道上传文件的最佳位置是什么。

我想在beforeSave()上执行此操作,但我无法访问$this->request->data('file_name')上的beforeSave()

3 个答案:

答案 0 :(得分:0)

BeforeSave用于预保存逻辑(验证等)。您最好使用afterSave()上传文件。

答案 1 :(得分:0)

您可以使用像这样的插件,而不是发明自己的处理上传方式:

https://github.com/davidyell/CakePHP3-Proffer

答案 2 :(得分:0)

您也可以使用this plugin或查看它是如何做到的。

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

该插件允许您配置何时存储文件:

  

每个开发人员可能希望将文件存储在不同的位置或   在存储之前或之后对文件应用其他操作。基于   在不同情况下,您可能希望保存关联文件   甚至在你创建记录之前,它就会被附加到   您可能希望在本文档中使用其他方案   后。

该插件在保存之前使用事件来处理文件。