在Moodle 1.9.7中,我需要让教师在全新的作业插件的管理面板中上传文件。
在我的 assignment.class.php 中覆盖 setup_elements 函数时,我正在执行以下操作:
$mform->addElement('file', 'foo', 'Label');
$mform->setHelpButton('foo', array('foo', 'Label', 'assignment/type/my_assignment'));
使用精美的文件选择器上传表单,但我应该如何管理上传的文件?应该覆盖哪个功能?如何指定我要上传文件的位置?
Moodle中完全缺乏文档(混淆了一点混乱):(
我正在深入研究代码,看看舞台背后发生了什么。与此同时,我认为你们中的一些人过去也可以做同样的事情。
我知道这是高度特定的,但也许Moodle开发人员正在研究这个:)
答案 0 :(得分:0)
嗯,在挖掘代码之后,这就是我所做的。
我已经覆盖了以下赋值函数:
function add_instance($submission)
{
return (save_uploaded_files($submission)) ? parent::add_instance($submission) : false;
}
function update_instance($submission)
{
return (save_uploaded_files($submission)) ? parent::update_instance($submission) : false;
}
save_uploaded_files($submission)
函数的位置如下:
function save_uploaded_files($submission)
{
global $CFG;
$um = new upload_manager('my_file', ... [OPTIONS HERE] ... );
return $um->process_file_uploads("my/upload/path");
}