我有一个简单的表单,其中有一些数据要保存到数据库中,但在这个表单上我还有一个文件字段。
我想知道上传文件的最佳位置是什么。
我想在beforeSave()
上执行此操作,但我无法访问$this->request->data('file_name')
上的beforeSave()
。
答案 0 :(得分:0)
BeforeSave用于预保存逻辑(验证等)。您最好使用afterSave()上传文件。
答案 1 :(得分:0)
您可以使用像这样的插件,而不是发明自己的处理上传方式:
答案 2 :(得分:0)
您也可以使用this plugin或查看它是如何做到的。
https://github.com/burzum/cakephp-file-storage/tree/3.0
该插件允许您配置何时存储文件:
每个开发人员可能希望将文件存储在不同的位置或 在存储之前或之后对文件应用其他操作。基于 在不同情况下,您可能希望保存关联文件 甚至在你创建记录之前,它就会被附加到 您可能希望在本文档中使用其他方案 后。
该插件在保存之前使用事件来处理文件。