Moodle使用选定值填充多选

时间:2014-08-04 13:37:07

标签: moodle

我是moodle的新手,我想做的是,

我在moodleform的一个表单类中进行了一些编辑。现在为它添加了一个新字段。

$teacherSelect = $mform->createElement('select', 'teachers', "Teachers", $teachers);
$teacherSelect->setMultiple(true);

当希望保存数据时,此工作正常。

但是现在我需要在表单填充时设置数据。我无法理解我应该以哪种格式构建数据,以便可以将数据填充回多选。

1 个答案:

答案 0 :(得分:2)

获取记录,然后添加包含所选项目数组的属性,并在调用代码中设置数据,例如:在edit.php中,如

$myrecord = $DB->get_record('mytable');
...
// Selected teachers - its a key so you can use either integers or strings.
$myrecord->teachers = array('teacher1','teacher2'); 
...
$mform = new myform();
...
$mform->set_data($myrecord); // This sets the data in the form.

有关更好的示例,请查看文件/mod/glossary/edit.php中的类别