我被要求创建一个引擎,将从我们的本地数据库中获取课程(名称、短名称、类别)并将其添加到 Moodle 中。
我正在考虑为此使用 Moodle API。
我尝试使用网络服务但没有成功。
我需要类似的东西:
moodle_create_course($name, $short-name, $description, $category, $type)
Run Code Online (Sandbox Code Playgroud)
有人有意见吗?
我想使用“enrol_manual_enrol_users”功能。执行此“角色”所需的一个字段。我想从 Moodle 中提取角色列表并将其呈现给用户以选择学生应注册的角色。我看不到任何返回角色列表的函数。有内置的网络服务吗?
我正在尝试使用 Python 的请求库访问 Moodle 安装的 Web 服务。我有 API 的文档和一个用 php 编写的示例项目(我以前没有看过 php,它比我预期的要理解的要困难得多),但我真的很难正确格式化请求。该网站返回检测到的无效参数,因此我非常确定我的端点、授权令牌和服务器配置正在工作,只是数据的格式让我失望。
首先这里是错误...
<?xml version="1.0" encoding="UTF-8" ?>
<EXCEPTION class="invalid_parameter_exception">
<ERRORCODE>invalidparameter</ERRORCODE>
<MESSAGE>Invalid parameter value detected</MESSAGE>
</EXCEPTION>
Run Code Online (Sandbox Code Playgroud)
现在我的代码...
import requests
target = 'http://example.com/moodle/webservice/rest/server.php?'
moodle_create_token = 'xxx'
moodle_enrol_token = 'yyy'
url_payload = {
"wstoken":moodle_create_token,
"wsfunction":"core_user_create_users"
}
###not sure if I should just be passing this as a dict or some deeper more layered struct
payload = {
"username":"testuser",
"password":'testpass',
"firstname":'testf',
"lastname":'testl',
"email":"test@example.com",
"idnumber":"1234"
}
###not sure how to include the payload as the …
Run Code Online (Sandbox Code Playgroud) 来自Moodle doc:
上下文是Moodle中可以分配角色的空间.
我知道上下文是用于管理Moodle对象的逻辑空间.
我开发了一个带有文件上传的自定义块插件,我使用它file_prepare_draft_area
和file_save_draft_area_files
函数.有一个$context
必须传递的参数,我真的不知道我应该传递什么上下文?这意味着,我想,我应该在哪个逻辑空间中放置我的块插件上传的文件?在我看来,最合乎逻辑的是将上传的文件存储在与我的块插件相关的上下文中.
我试图使用context_block :: instance($ instanceid),但我不知道如何获取$ instanceid param.
我正在尝试编写从外部网站到moodle 的登录API。我不知道如何实现它。请引导我完成。我想通过 REST Web 服务创建。这样学生就可以通过该外部网站登录。
我已经检查了 mod/quiz/db/services.php ,但无法找到任何相同的 api。
注意:测验数据如问题、答案详细信息。
我想在 Postman 中创建一个 API 请求,该请求在 Moodle 中创建一个类别。以下是我在 Moodle 中执行的步骤:
在“授权”选项卡下,我选择了“承载令牌”并添加了来自 Moodle Web 服务的令牌。
当我发送请求时,出现invalidtoken 无效令牌 - 未找到令牌错误。
任何人都可以为此建议一个解决方案
Moodle 版本:3.4.8 和 Postman 版本 7.6.0
提前致谢。
我需要创建一个外部应用程序来创建,修改和注册Moodle的用户.
我一直在阅读moodle文档,但对于开发人员来说,它更适合前端管理员.如何创建用户?哪些表格包含有关它们的强制性信息?以及如何将现有用户注册到moodle?
我正在尝试使用Moodle Api收集与Moodle课程有关的所有信息(课程+课程)我获得了课程信息,但仅获得一些基本信息,我想要课程详细信息及其课程(在课程中创建)
Eg : var domainname = 'http://<server URL>/moodle';
var token = 'df337369637c692303d903f8cacf1eb0';
var functionname = 'core_course_get_courses';
var serverurl = domainname + '/webservice/rest/server.php' ;
var data = {
wstoken: token,
wsfunction: functionname,
moodlewsrestformat: 'json'
} var response = $.ajax(
{ type: 'GET',
data: data,
url: serverurl
}
);
Run Code Online (Sandbox Code Playgroud)
输出看起来像
{"id":2,"shortname":"IV Support Queries","categoryid":1,"categorysortorder":10001,"fullname":"IV Support Queries","displayname":"IV Support Queries","idnumber":"","summary":"<p>IV Support Queries Desc<br \/><\/p>","summaryformat":1,"format":"topics","showgrades":1,"newsitems":5,"startdate":1479168000,"numsections":5,"maxbytes":0,"showreports":0,"visible":1,"hiddensections":1,"groupmode":0,"groupmodeforce":0,"defaultgroupingid":0,"timecreated":1479127227,"timemodified":1479198758,"enablecompletion":0,"completionnotify":0,"lang":"","forcetheme":"","courseformatoptions":[{"name":"numsections","value":5},{"name":"hiddensections","value":1},{"name":"coursedisplay","value":1}]}
Run Code Online (Sandbox Code Playgroud)
我想在课程中创建详细的课程。如何通过Api获取信息。谢谢
我目前是一所大学的学生,每天都在使用Moodle。我想访问一些可用的信息(例如,我正在上课的信息,应交的作业和时间等)
我对Moodle的API进行了一些研究,但所有这些似乎都针对实际运行Moodle(我的大学)的高级用户。
作为学生,我是否有一种简单的方法来获取信息?
我的应用程序使用Node.js
我有一个名为 xyz.com 的门户网站和一个名为 yzx.com 的 Moodle 网站。我在两个网站上都有一些用户,它们具有相同的用户名和密码。我想要的是当用户登录名为 xyz.com 的非 Moodle 站点时,他应该自动登录到 yzx.com 即 Moodle 站点上的同一用户。
请帮助我如何向moodle发出curl或API请求,以便它在当前浏览器上自动登录。Moodle 有函数 user_login($username,$pass) 但不知道如何使用它,因为我是 Moodle 的新手。