日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

moodle 页面联动效果

發布時間:2023/12/14 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 moodle 页面联动效果 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文件
https://docs.moodle.org/dev/Web_services:Files

Javascript 模塊

https://docs.moodle.org/dev/Javascript_Modules
https://docs.moodle.org/dev/Guide_to_adding_third_party_jQuery_for_AMD
https://docs.moodle.org/dev/Useful_core_Javascript_modules

https://docs.moodle.org/dev/Templates#What_if_a_template_contains_javascript.3F

windows下的相關安裝

安裝 NVM 和node

安裝 NodeJS 的推薦方式是通過Node Version Manager或 NVM。NVM 允許您在計算機上安裝和使用多個不同版本的 NodeJS。支持的 Moodle 版本均使用 NodeJS v14.18.0 版本。

安裝node.js

1、node.js版本要大于14.15小于15.00.0

安裝grunt

安裝watchman

1、在開始菜單里找到Windows PowerShell.并以管理員身份運行

2、輸入以下代碼安裝 watchman

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1')) https://facebook.github.io/watchman/docs/install.html

注意:使用 Windows PowerShell 安裝watchman 是為了避免提示Set-ExecutionPolicy不是內部命令。
(運行Windows PowerShell后可以輸入 set-ExecutionPolicy RemoteSigned 回車,再輸入 A 回車,再使用Set-ExecutionPolicy 命令不會再提示不是內部命令問題)

打開cmd 命令 提示符

cd D:\wamp64\www\moodle\server\moodle\mod grunt watch

mod/univilab/db/services.php:54
注意:每當services.php 更改時,不要忘記增加插件的version.php 文件中的版本號,否則Moodle 將無法檢測到更改。

https://docs.moodle.org/dev/External_functions_API

https://docs.moodle.org/dev/Adding_a_web_service_to_a_plugin
a list => external_multiple_structure
an object => external_single_structure
a primary type => external_value

https://docs.moodle.org/dev/Web_services_API

'mod_univilab_get_prov_base_images' => array('classpath' => 'mod/univilab/classes/external.php','classname' => 'mod_univilab_external','methodname' => 'get_prov_base_images',//在上面的類中實現這個函數'description' => 'Get the list of base images for a certain environment','ajax' => true,//true/false 如果您允許通過 ajax 調用此 Web 服務功能'type' => 'read', //如果您的函數進行了任何數據庫更改,則值為 'write',否則為 'read'。'capabilities' => 'mod/univilab:addbaseimage'//列出所需的功能函數(在 require_capability() 調用中的那些)(為授權用戶顯示缺少的功能,也為在 Web 界面中手動創建的令牌顯示,這只是提供信息)。),

mod/univilab/db/access.php:75

// 添加一個配置'mod/univilab:addbaseimage' => ['riskbitmask' => RISK_CONFIG,'captype' => 'write','contextlevel' => CONTEXT_SYSTEM,'archetypes' => ['manager' => CAP_ALLOW,],'clonepermissionsfrom' => 'moodle/site:config'],

報錯信息

mod/assign/externallib.php:1710

error: “異常 - Call to undefined function external_multiple_structure()”
errorcode: “generalexceptionmessage”
stacktrace: null
debuginfo: null
reproductionlink: null

1、是名字不一致
public static function get_prov_api_info(baseurl,base_url,baseu?rl,key_id,keysecret,key_secret,keys?ecret,provider_type){
$params = self::validate_parameters(self::get_prov_api_parameters(),array());
}
2、_returns()方法中 代碼不對

此處是正常寫法 public static function get_prov_api_info_returns(){return new external_multiple_structure(new external_single_structure (array('region_id' => new external_value(PARAM_RAW, 'region id'),'pay_type' => new external_value(PARAM_RAW, 'pay type'),))); }

二、檢測到無效的響應值
exception: {message: “檢測到無效的響應值”, errorcode: “invalidresponse”, link: “http://localhost/”,…}
message: “檢測到無效的響應值”
errorcode: “invalidresponse”
link: “http://localhost/”
moreinfourl: “https://docs.moodle.org/311/zh_cn_wp/error/debug/invalidresponse”
2、***_returns()與***_parameters()中的描述未寫

三、檢測到無效的參數值
message: “檢測到無效的參數值”
errorcode: “invalidparameter”
link: “http://localhost/”
moreinfourl: “https://docs.moodle.org/311/zh_cn_wp/error/debug/invalidparameter”

JS中的異步參數名 與 PHP方法中的參數名要一致

const getprovapi = (base_url,key_id,key_secret,provider_type) => {require(['core/ajax'], function (ajax) {var promises = ajax.call([{methodname: 'mod_univilab_get_prov_api_info',args: {base_url: base_url,access_key_id:key_id,access_key_secret:key_secret,provider_type:provider_type}},]);promises[0].done(function (response) {window.console.log('response:'+response);});}); }; $params = self::validate_parameters(self::get_prov_api_info_parameters(),array('base_url'=>$base_url,'access_key_id'=>$access_key_id,'access_key_secret'=>$access_key_secret,'provider_type'=>$provider_type));

四 message: “異常 - Too few arguments to function mod_univilab_external::get_prov_api_info(), 4 passed in [dirroot]\lib\externallib.php on line 261 and exactly 5 expected”
errorcode: “generalexceptionmessage”
link: “http://localhost/”
moreinfourl: “https://docs.moodle.org/311/zh_cn_wp/error/moodle/generalexceptionmessage”


public static function get_prov_api_info_returns(){return new external_multiple_structure(new external_single_structure (array('region_id' => new external_value(PARAM_RAW, 'region id'),'pay_type' => new external_value(PARAM_RAW, 'pay type'),))); }

對外服務說明

https://docs.moodle.org/dev/External_services_description

參數類型
請注意,此列表在您閱讀時幾乎肯定會過時。幫自己一個忙,看看 lib/moodlelib.php 中的列表。這保證是最新的。

‘PARAM_ALPHA’, ‘阿爾法’
‘PARAM_ALPHAEXT’, ‘alphaext’
‘PARAM_ALPHANUM’, ‘字母數字’
‘PARAM_ALPHANUMEXT’, ‘alphanumext’
‘PARAM_AUTH’, ‘認證’
‘PARAM_BASE64’, ‘base64’
‘PARAM_BOOL’, ‘布爾’
‘PARAM_CAPABILITY’, ‘能力’
‘PARAM_CLEANHTML’, ‘cleanhtml’
‘PARAM_EMAIL’, ‘電子郵件’
‘PARAM_FILE’, ‘文件’
‘PARAM_FLOAT’, ‘浮動’
‘PARAM_HOST’, ‘主機’
‘PARAM_INT’, ‘int’
‘PARAM_LANG’, ‘lang’
‘PARAM_LOCALURL’, ‘localurl’
‘PARAM_NOTAGS’, ‘notags’
‘PARAM_PATH’, ‘路徑’
‘PARAM_PEM’, ‘pem’
‘PARAM_PERMISSION’, ‘權限’
‘PARAM_RAW’, ‘原始’
‘PARAM_RAW_TRIMMED’, ‘raw_trimmed’
‘PARAM_SAFEDIR’, ‘safedir’
‘PARAM_SAFEPATH’, ‘安全路徑’
‘PARAM_SEQUENCE’, ‘序列’
‘PARAM_TAG’, ‘標簽’
‘PARAM_TAGLIST’, ‘標簽列表’
‘PARAM_TEXT’, ‘文本’
‘PARAM_THEME’, ‘主題’
‘PARAM_URL’, ‘url’
‘PARAM_USERNAME’, ‘用戶名’
‘PARAM_STRINGID’, ‘stringid’
‘PARAM_CLEAN’, ‘干凈’
‘PARAM_INTEGER’, ‘int’
‘PARAM_NUMBER’, ‘浮動’
‘PARAM_ACTION’, ‘alphanumext’
‘PARAM_FORMAT’, ‘alphanumext’
‘PARAM_MULTILANG’, ‘文本’
‘PARAM_TIMEZONE’, ‘時區’
‘PARAM_CLEANFILE’, ‘文件’
‘PARAM_COMPONENT’, ‘組件’
‘PARAM_AREA’, ‘區域’
‘PARAM_PLUGIN’, ‘插件’
——————————————————————————————
Windows下安裝及使用NVM
https://github.com/coreybutler/nvm-windows/releases

https://github.com/nvm-sh/nvm#installing-and-updating

command -v nvm //驗證nvm是否已安裝成功 nvm install 14.18.0 //安裝指定的版本的nodejs nvm use 14.18.0 //使用指定版本的nodejs

nvm的使用

nvm arch [32|64]: 顯示node是運行在32位還是64位模式。指定32或64來覆蓋默認體系結構。 -nvm install <version> [arch]:該可以是node.js版本或最新穩定版本latest。(可選[arch])指定安裝32位或64位版本(默認為系統arch)。設置[arch]為all以安裝32和64位版本。在命令后面添加– insecure,可以繞過遠端下載服務器的SSL驗證。 nvm list [available]:列出已經安裝的node.js版本。可選的available,顯示可下載版本的部分列表。這個命令可以簡寫為nvm ls [available]。 nvm on: 啟用node.js版本管理。 nvm off: 禁用node.js版本管理(不卸載任何東西) nvm proxy [url]: 設置用于下載的代理。留[url]空白,以查看當前的代理。設置[url]為none刪除代理。 nvm node_mirror [url]:設置node鏡像,默認為https://nodejs.org/dist/.。可以設置為淘寶的鏡像https://npm.taobao.org/mirrors/node/ nvm npm_mirror [url]:設置npm鏡像,默認為https://github.com/npm/npm/archive/。可以設置為淘寶的鏡像https://npm.taobao.org/mirrors/npm/ nvm uninstall <version>: 卸載指定版本的nodejs。 nvm use [version] [arch]: 切換到使用指定的nodejs版本??梢灾付?2/64位[arch]。 -nvm use <arch>:將繼續使用所選版本,但根據提供的值切換到32/64位模式 nvm root [path]: 設置 nvm 存儲node.js不同版本的目錄 ,如果未設置,將使用當前目錄。 -nvm version: 顯示當前運行的nvm版本,可以簡寫為nvm v nvm version //顯示當前運行的nvm版本,可以簡寫為nvm v

總結

以上是生活随笔為你收集整理的moodle 页面联动效果的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 小情侣高清国产在线播放 | 中文字幕乱码人妻二区三区 | 不卡黄色 | 日韩一级二级三级 | 色婷婷一区二区三区 | 免费黄色网址在线观看 | 啪啪免费av| 国产精品国产精品国产专区不卡 | 69xxx国产 | 性色欲网站人妻丰满中文久久不卡 | 深夜视频在线免费 | 欧美日韩一区在线观看 | 人妻精品无码一区二区 | 91国产丝袜播放在线 | 成人福利一区二区 | 中文字幕一区二区三区四区视频 | 欧美xxxx日本和非洲 | 日本国产视频 | 国产资源在线观看 | www日韩精品 | 深夜国产在线 | av一区二区三区免费观看 | 岛国福利视频 | 亚洲欲妇| 日剧再来一次第十集 | 日韩 国产| 国产精品播放 | 超碰国产97| 九色综合网 | 在线免费中文字幕 | 午夜久久视频 | 国产伦子伦对白视频 | av在线免费不卡 | 中文字幕在线资源 | www.黄色小说.com | 亚洲欧美激情在线观看 | 午夜专区| av毛片在线免费观看 | 九九色网 | 毛片网站在线 | 欧美一二区视频 | 日韩在线一二三 | 成人综合一区二区 | 五月天婷婷在线视频 | 性猛交╳xxx乱大交 偷偷操不一样的久久 | 91人人看 | exo妈妈mv在线播放免费 | 午夜秋霞影院 | 国产成人啪免费观看软件 | 婷婷丁香九月 | 青青草黄色 | 老熟女高潮一区二区三区 | 一卡二卡久久 | 亚洲一级二级片 | 悠悠色在线 | 国产综合色视频 | 天天综合网在线 | 久久久人妻无码一区二区 | 男人的天堂中文字幕 | 精品久久久久久久久久久 | 欧美aaa在线观看 | 红桃视频隐藏入口 | 后进极品白嫩翘臀在线视频 | 亚洲一区精品在线 | 欧美精品1区2区3区 精品成人一区 | 91中文在线观看 | 天堂网中文在线 | h视频免费在线观看 | 久久国内偷拍 | 影音先锋毛片 | 亚洲午夜久久久 | 成人在线三级 | 一级特黄av | 91大神在线观看视频 | 亚洲av无码一区二区三区网址 | 中文字幕国产精品 | 波多一区二区 | 免费观看理伦片在线播放视频软件 | 亚洲成人av电影在线 | 国产亚洲久久 | 麻豆自拍视频 | jizz毛片| 少女忠诚电影高清免费 | 久久精品99久久 | 免费观看高清在线 | 伊人久久狼人 | sm一区二区三区 | 日韩在线视频在线观看 | 在线不卡视频 | 韩日视频一区 | 农民工hdxxxx性中国 | 日韩逼 | 欧美色乱| 黄色三级网站在线观看 | 嫩草一二三 | 五月婷婷深深爱 | 在厨房拨开内裤进入毛片 | 国产一区二区激情 | 少妇av网|