在OpenedX自訂一個XBlock組件

首頁 >> composer >> 在OpenedX自訂一個XBlock組件

前陣子介紹過 在Ubuntu 16.04 快速安裝Open edX線上教學平台(Native installation)

除了利用原有的預設功能以外,

要創建一個引人入勝的線上課程,

作者必須透過各式各樣的組件來達成.

XBlock就是edX的組件架構,

除了課程可以用以外,

XBlock也能用在API上,

提供edX各式web服務,

馬上進入今天的主題:

 

在OpenedX自訂一個XBlock組件

為了開發方便,

先下載xblock-sdk

在安裝以前,

系統除了要安裝python2.7以外,

還需要

sudo apt-get install python-dev libxml2-dev libxslt-dev lib32z1-dev libjpeg62-dev

1. 接著下載xblock-sdk

git clone   https://github.com/edx/xblock-sdk.git

2.   建議使用virtualenv建構一個開發環境

virtualenv -p /usr/bin/python2.7 tenv

並啟用該環境

source   tenv/bin/activate

3.  進入xblock-sdk目錄,

並執行make install

安裝完畢首次要再執行

python  manage.py   migrate

4.    到此xblock-sdk的環境就安裝完成了

打上

python   manage.py   runserver

再到瀏覽器打上localhost:8000

可將設計好的xblock組件先安裝在此xblock-sdk的環境進行測試

5.   在xblock-sdk測試完已經開發完的xblock,

確定沒有問題之後,

就可以部屬到OpenedX中

首先要先將其安裝到OpenedX

sudo -u   edxapp   /edx/bin/pip.edxapp   install   新的xblock

同時確認  cms /  lms  的 common.py   中

xblock_select_function =   prefer_xmodules   選項enable

(路徑為:
/edx/app/edxapp/edx-platform/lms/envs/common.py
/edx/app/edxapp/edx-platform/cms/envs/common.py
)

安裝完畢以後進入studio中,

找到想新增組件的課程

選擇settings / advanced settings

在advanced module list 中加入新的xblock組件

重新啟動 cms之後,

在課程組件選擇 advance,

就能看見新增的組件

如何新增一個xblock呢?

利用xblock-sdk/bin/workbench-make-xblock,

透過此命令可新增基本的xblcok組件,

以利後續開發新功能

workbench-make-block會詢問兩個問題

1.   xblock名稱

2.   xblock   class名稱 ( 第一個字要大寫,字尾必須為XBlock )



================================
分享與讚美,是我們繼續打拼的原動力.
若文章對您有幫助,望請不吝按讚或分享.
或者對影片有興趣可以訂閱頻道接收通知
================================
YouTube 頻道
FB 粉絲專頁
================================

guangyaw

重點主題: 程式設計: Python , Django,Android 工具與軟體: Open edX,Linux工具,Blender教學 分享各地美景與產品使用心得,遊戲實況,甚至影視戲劇等, 您的訂閱就是頻道成長的原動力。 YouTube 頻道: https://youtube.com/xyawli

You may also like...

1 Response

  1. 2019-09-16

    […] 之前提到過Open edX可透過xblock擴展其功能, […]

發佈留言