Canvas LMS REST API 创建测验
Canvas LMS REST API Quiz creation
我在使用 Canvas REST 创建测验时遇到问题 API:
我可以创建一个 title
集的新测验。
我可以添加N个问题设置如下参数:
question_name
question_text
question_type
points_possible
answers
当我查看我的测验页面时,我可以看到测验存在,但它只显示已为测验创建了 1 个问题。我必须转到测验页面,单击 编辑 按钮,然后保存所有问题的测验以显示在测验页面上。
我在这个工作流程中缺少什么?
因此,对于任何对这个问题感兴趣的人,我能找到的最佳解决方案是 hack。我尝试比较手动保存测验前后返回的测验模型数据结构。有一些细微的差异,但只有几个有意义的差异。唯一相关的区别在于 question_count
属性。添加问题后不再更新。
To "fix" this:添加您的问题后,手动更新 question_count
属性(通过 PUSH
)。
也许这是一个错误,也许我不知道自己在做什么。无论哪种方式,如果其他人对 Canvas REST API 有更好的理解,请发表评论或提供更好的答案。
只需 运行 解决同样的问题,这里有一个可能的解决方法:首先创建测验,将 published
设置为 False
。添加您的问题。然后 edit
测验 (https://canvas.instructure.com/doc/api/quizzes.html#method.quizzes/quizzes_api.update) 将 published
设置为 True
。然后添加任何覆盖等
我在使用 Canvas REST 创建测验时遇到问题 API:
我可以创建一个 title
集的新测验。
我可以添加N个问题设置如下参数:
question_name
question_text
question_type
points_possible
answers
当我查看我的测验页面时,我可以看到测验存在,但它只显示已为测验创建了 1 个问题。我必须转到测验页面,单击 编辑 按钮,然后保存所有问题的测验以显示在测验页面上。
我在这个工作流程中缺少什么?
因此,对于任何对这个问题感兴趣的人,我能找到的最佳解决方案是 hack。我尝试比较手动保存测验前后返回的测验模型数据结构。有一些细微的差异,但只有几个有意义的差异。唯一相关的区别在于 question_count
属性。添加问题后不再更新。
To "fix" this:添加您的问题后,手动更新 question_count
属性(通过 PUSH
)。
也许这是一个错误,也许我不知道自己在做什么。无论哪种方式,如果其他人对 Canvas REST API 有更好的理解,请发表评论或提供更好的答案。
只需 运行 解决同样的问题,这里有一个可能的解决方法:首先创建测验,将 published
设置为 False
。添加您的问题。然后 edit
测验 (https://canvas.instructure.com/doc/api/quizzes.html#method.quizzes/quizzes_api.update) 将 published
设置为 True
。然后添加任何覆盖等