Canvas LMS REST API Создание викторины
У меня проблема с созданием викторины с помощью Canvas REST API:
Я могу создать новую викторину с title
задавать.
Я могу добавить N вопросов со следующими параметрами:
question_name
question_text
question_type
points_possible
answers
Когда я смотрю на свою страницу тестов, я вижу, что тест существует, но он показывает только то, что для теста был создан 1 вопрос. Мне нужно перейти на страницу викторины, нажать кнопку " Редактировать" и затем сохранить викторину для всех вопросов, которые будут отображаться на странице викторины.
Чего мне не хватает в этом рабочем процессе?
1 ответ
Таким образом, для всех, кто интересуется этим вопросом, лучшее решение, которое мне удалось найти, - это взломать. Я попытался сравнить структуру данных модели теста, возвращенную как до, так и после ручного сохранения теста. Были некоторые тривиальные различия, но только несколько значимых. Единственная существенная разница была в question_count
приписывать. Он не обновляется после добавления вопросов.
Чтобы "исправить" это: после добавления вопросов вручную обновите question_count
атрибут (через PUSH
).
Возможно, это ошибка, возможно, я не знаю, что я делаю. В любом случае, если у кого-то есть лучшее понимание API REST Canvas, прокомментируйте или предоставьте лучший ответ.
Просто столкнулся с той же проблемой, и вот возможное решение: сначала создайте тест с
published
установлен в
False
. Добавьте свои вопросы. потом
edit
тест (https://canvas.instructure.com/doc/api/quizzes.html#method.quizzes/quizzes_api.update) для установки
published
к
True
. Затем добавьте любые переопределения и т. Д.