我在本地插件中创建了一个工作表单,它正在将数据正确插入到我的自定义表中。
我现在想要添加的是一个filepicker元素,在保存表单后会将文件放入指定的文件夹中。
filep [icker本身工作正常,但是当我保存表单时没有出现文件,我使用的代码如下所示:
$mform->save_file('lowresCh', '/my_form/', false);
我在'my_form'位尝试了各种各样的东西,但无济于事。表单的其余部分仍然将其数据放入自定义表中,我可以在mdl_files表中看到我的文件(标记为草稿)。
通过完整调试,我可以收到警告:
Warning: copy(/my_form/): failed to open stream: Is a directory in /...../lib/filestorage/stored_file.php on line 390
我不知道我是否正确接近它,任何正确方向的帮助或指示都会非常感激。
哦,我已经阅读了Using the File API in Moodle forms页面,有助于我了解我的观点,但没有进一步。
答案 0 :(得分:1)
我通过使用文件名作为save_file()中的第二个参数来解决它,如果我在前面添加一个目录,那么所有文件都将保存在我的插件中一个完美的子目录中。
现在看起来像这样:
$mform->save_file('lowresCh', 'files/'.$mform->get_new_filename('lowresCh'), false);