成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Moodle Local 插件講解

Gu_Yan / 2010人閱讀

摘要:插件講解插件在中相比于其他插件算是比較容易上手的一個(gè)插件,插件中前后臺(tái)分離,不用遨游在雜糅前后端的代碼里。學(xué)會(huì)插件是上手其他插件的前提,其實(shí)一旦學(xué)會(huì)插件也會(huì)發(fā)現(xiàn)其他插件不過是它的一種變種形式罷了,只要舉一反三就能很快掌握。

Moodle Local 插件講解

Local插件在Moodle中相比于其他插件算是比較容易上手的一個(gè)插件,Local插件中前后臺(tái)分離,不用遨游在雜糅前后端的代碼里。學(xué)會(huì)Local插件是上手其他插件的前提,其實(shí)一旦學(xué)會(huì)Local插件也會(huì)發(fā)現(xiàn)其他插件不過是它的一種變種形式罷了,只要舉一反三就能很快掌握。

流程圖

前端 Template

服務(wù)器配置了相應(yīng)的url,所以每個(gè)插件的加載首頁都是index.php,但是并不意味著頁面的代碼就在 index.php中,首先在index.php中調(diào)用renderer.php中相應(yīng)的頁面渲染方法,例如 render_index_page($page)方法:

public function render_index_page($page) {
$data = $page->export_for_template($this);
    render_from_template("local_xxx/index", $data)
}

在這個(gè)方法中,首先調(diào)用了index_page這個(gè)類中的export_for_template方法,獲得頁面靜態(tài)加載需要的數(shù)據(jù),例如mustache模板需要的數(shù)據(jù)data數(shù)組的索引與模板名稱一一對(duì)應(yīng),例如mustache文件中若有 {{#user}} hello !{{/user}},那么對(duì)應(yīng)class一定存在$data["user"] = xxxx;

render_from_template("local_xxx/index", $data) 為例,local_xxx/indextemplate目錄下必定有文件名為index.mustache的文件,這是moodle封裝好的命名規(guī)范,而mustache文件就是頁面展示的代碼所在了;

通過{{#js}} require xxx {{/js}} 引入對(duì)應(yīng)的JavaScript文件;

CSS

每個(gè)local插件中都存在一個(gè)style.css這樣的一個(gè)css樣式文件,系統(tǒng)運(yùn)行時(shí),會(huì)將每個(gè)模塊的css文件內(nèi)容合并到一起,所以如果有兩個(gè)名稱一樣的css,則會(huì)發(fā)生覆蓋的現(xiàn)象,所以建議起名字統(tǒng)一在最前面加上當(dāng)前的插件名稱,要注意的是,每次新增、修改或者刪除css文件內(nèi)容后,如若需要立即查看效果,必要以admin角色進(jìn)入系統(tǒng),然后清空緩存;

JavaScript

目前系統(tǒng)中的js是基于RequireJS框架,遵循AMD開發(fā)規(guī)范,利用Grunt構(gòu)建的。amd目錄下有src目錄和build目錄,src下的xxx.js是供開發(fā)時(shí)編寫調(diào)試使用,而build目錄下的min.js則是網(wǎng)站實(shí)際運(yùn)行時(shí)所使用的js文件,經(jīng)過壓縮可以大幅度提升運(yùn)行速度。所以每次修改js完畢后,提交代碼切勿忘記生成對(duì)應(yīng)的 min.js文件并提供,生成命令為grunt uglify;

后端 db 1. access.php

主要負(fù)責(zé)記錄權(quán)限的配置;

2. service.php

負(fù)責(zé)接收 ajax 提交,配置對(duì)應(yīng)的后臺(tái) API 的類名、路徑 和方法名等信息,并將對(duì)應(yīng)的ajax方法存入數(shù)據(jù)庫(kù)中;

3. install.xml

用于安裝系統(tǒng)時(shí)表結(jié)構(gòu)的對(duì)應(yīng)生成;

4. install.php

用于安裝系統(tǒng)時(shí)數(shù)據(jù)庫(kù)的缺省數(shù)據(jù)的提供;

5. upgrade.php 開發(fā)規(guī)范

用于系統(tǒng)表結(jié)構(gòu)變化等版本升級(jí)事項(xiàng)的實(shí)現(xiàn),由于生產(chǎn)環(huán)境中客戶已有大量數(shù)據(jù)存在于數(shù)據(jù)庫(kù)中,所以這時(shí)候不能采取重裝系統(tǒng)的方式更改表結(jié)構(gòu)或者更改數(shù)據(jù)庫(kù)等操作,這時(shí)候就得借助 upgrade.php平滑升級(jí)。

后臺(tái) API 1. externallib.php

負(fù)責(zé)編寫service.phpajax提交方法對(duì)應(yīng)的后臺(tái)方法,并調(diào)用lib.php中的API實(shí)現(xiàn);

2. lib.php

負(fù)責(zé)方法的具體實(shí)現(xiàn),代碼與數(shù)據(jù)庫(kù)的數(shù)據(jù)交互

3. lang/en/xxx.php 和 lang/zh_cn/xxx.php

en目錄下的表示英文翻譯語言文件,zh_cn目錄下的表示中文翻譯語言文件,具體調(diào)用方法為:

php中: get_string(字符串名, 插件名)

mustache中: {{#str}}字符串名, 插件名{{/str}}

作者:Tony

2017年02月28日

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/23124.html

相關(guān)文章

  • 解決Moodle在上傳用戶時(shí)無法自動(dòng)發(fā)送賬號(hào)密碼郵件

    摘要:?jiǎn)栴}描述由于某些原因,不能讓用戶進(jìn)行注冊(cè),只能有運(yùn)營(yíng)人員手動(dòng)添加用戶,單個(gè)添加用戶比較麻煩,因此選擇使用上傳文件的形式來批量生成用戶,但是上傳用戶在不給定字段時(shí),應(yīng)該生成密碼并通知用戶,但是最終結(jié)果是生成用戶成功了,郵件并沒有發(fā)出郵件服務(wù)器 問題描述 由于某些原因,不能讓用戶進(jìn)行注冊(cè),只能有運(yùn)營(yíng)人員手動(dòng)添加用戶,單個(gè)添加用戶比較麻煩,因此選擇使用上傳文件的形式來批量生成用戶,但是上傳用...

    Bryan 評(píng)論0 收藏0
  • PHP 性能追蹤及分析工具(XHPROF)

    摘要:什么是開源的輕量級(jí)性能分析工具。它報(bào)告函數(shù)級(jí)別的請(qǐng)求次數(shù)和各種指標(biāo),包括阻塞時(shí)間,時(shí)間和內(nèi)存使用情況?;跒g覽器的性能分析用戶界面能更容易查看,或是與同行們分享成果。對(duì)于本地開發(fā)環(huán)境來說,進(jìn)行性能分析是夠用了。 什么是 XHPROF? XHPROF:Facebook 開源的輕量級(jí)PHP性能分析工具。 它報(bào)告函數(shù)級(jí)別的請(qǐng)求次數(shù)和各種指標(biāo),包括阻塞時(shí)間,CPU時(shí)間和內(nèi)存使用情況。 XHPr...

    raoyi 評(píng)論0 收藏0
  • chrome擴(kuò)展應(yīng)用開發(fā)快速科普

    摘要:擴(kuò)展應(yīng)用模塊功能介紹擴(kuò)展應(yīng)用由很多部分組成,其中主要模塊為為了避免由于翻譯原因?qū)е碌膯栴},因此在下文中對(duì)相關(guān)模塊的稱呼一律采用上面的英文。附錄官方開發(fā)文檔英建議有英文閱讀能力的人閱讀此文檔。 概述 本文通過對(duì)chrome插件的各個(gè)部分進(jìn)行快速的介紹,從而讓大家了解插件各個(gè)部分的關(guān)系,并且知道如何將其進(jìn)行組裝成一個(gè)完整的chrome插件。 由于chrome官方文檔中對(duì)于如何從零開發(fā)一個(gè)c...

    MockingBird 評(píng)論0 收藏0
  • 統(tǒng)一認(rèn)證 - Apereo CAS 簡(jiǎn)介

    摘要:在將臭未臭之前,我們趕緊把其中的統(tǒng)一認(rèn)證這塊過一下。的歷史前面說了是耶魯大學(xué)實(shí)驗(yàn)室的在年出的一個(gè)開源系統(tǒng)。這次我們先看看官網(wǎng)出的一幅圖,這張圖片介紹了的組成以及支持的各種協(xié)議,各種特性,不煩看看 為什么要做這個(gè)嘗試? 微服之道,方興未艾;農(nóng)之來學(xué)者,蓋已千者! 這句是從《陶山集·太學(xué)案問》瞎改出來的。意思就是微服務(wù)的架構(gòu)理念還在不斷地發(fā)展,現(xiàn)在整個(gè)啥都 言必出微服務(wù),差點(diǎn)都到了 沒學(xué)...

    zhunjiee 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<