#moodle
#moodle
Вопрос:
У меня возникла проблема с конкретным вызовом веб-службы Rest :
Метод: core_group_create_groups
Выдает следующую ошибку:
Неожиданные ключи (идентификатор курса) обнаружены в массиве параметров.
Я передаю точные свойства, определенные в документации:
_ //List of group object. A group has a courseid, a name, a description and an enrolment key.
list of (
object {
courseid int //id of course
name string //multilang compatible name, course unique
description string //group description text
descriptionformat int Default to "1" //description format (1 = HTML, 0 = MOODLE, 2 = PLAIN or 4 = MARKDOWN)
enrolmentkey string Optional //group enrol secret phrase
idnumber string Optional //id number
}
)_
Я использую Moodle 3.1 (Сборка: 20160623)
Есть идеи, почему это не нравится courseid
в запросе, даже если это допустимый параметр?
Ответ №1:
здесь также возникают проблемы с документацией Moodle. параметры, помеченные в документах как необязательные, на самом деле являются обязательными.
пример: в методе ‘core_role_assign_roles’ вы ДОЛЖНЫ передать ‘contextlevel’ и ‘instanceid’, указание документа необязательно.
Я просто использовал метод ‘core_group_create_groups’, и он отлично работал. на этот раз в документах были правильно переданы 3 параметра: идентификатор курса / имя / описание.
используется как:
"groups[0][courseid]=2amp;groups[0][name]=grupo2amp;groups[0][description]=desc grupo2"
возможно, дважды проверьте, существует ли код, который вы передаете в courseid а); б) действительно является идентификатором курса.
надеюсь, это поможет, Родриго
Ответ №2:
Вы должны вызвать веб-сервис, используя ключ «groups», чтобы он работал правильно (т. Е. Этот код работает для меня на PHP):
`$this->callWSFunction(
'core_group_create_groups',[
groups =>[
0 =>
[
'courseid' => $id,
'name' => $groupname,
'description' => $groupdescription
]
]
]
);`