XBlock的创建
来源:互联网 发布:南京录音棚淘宝 编辑:程序博客网 时间:2024/06/08 03:08
XBlock的创建
edX 平台上创建XBlock的过程。
参考官方文档:http://xblock.readthedocs.org/en/latest/getting_started.html
一、需要的背景知识:
Git,Github,Python中的虚拟环境,Shell配置文件(例如:.bashrc/.bash_profile)
二、开始
创建一个新的XBlock意味着用从XBlock继承的类创建一个可安装的Python套件。听起来很复杂,但实际上并不复杂
1.先决条件:
为了使用XBlock我们需要一些安装好的软件:
1)Git用来进行源控制
2)创建Python虚拟环境,可选:PyEvn,VirtualEnv,VirtualEnvWrapper
2.开始配置XBlock Repo
XBlockRepo
1). XBlock 代码在Github上。可以通过下面的命令从github上两获得XBlock repo:
$ git clonehttps://github.com/edx/XBlock.git
2). 为你的XBlock 开发工作创建一个虚拟环境
3). 激活你的虚拟环境,安装必要的Python 包:
$ pip install -r requirements.txt
3.创建一个新的XBlock
创建一个新的XBlock最简单的方式就是使用script/startnew.py
这个脚本在XBlock SDK repo中:
https://github.com/edx/xblock-sdk
为你的开发工作创建一个目录,在XBlock目录之外,我们可以叫它~/edxwork,从这里运行startnew.py脚本。
$ cd ~
$ mkdir edxwork
$ cd edxwork
$ /path/to/xblock-sdk/script/startnew.py
这个脚本需要两部分信息,这两部分信息都和你的XBlock的名字有关:一个简短的名字你可以用来作目录名,和一个Python类名。你可以选择“myxblock”作为简短的名字。“MyXBlcok”作为类名。我们将在下面的操作指南中使用这两个名字。你的文件将会用你实际给的名字来命名。
当脚本写好后,你就在完整的XBlock工作目录中有一个myxblock目录。当然,这只是你的XBlock的样板文件,现在你要开始写你自己的代码。
你的大多数工作将会在
myxblock/myxblock/myxblock.py这个文件中完成。这个文件中包含MyXblock类。在文件中有“TO-DO”注释,指示你在哪里作改动:
# TO-DO: change this view to display your data your own way.
defstudent_view(self, context=None):
etc...
4.写你的XBlock
现在开始困难的部分!你要修改myxlock.py和生成的XBlcok中的其他文件,才能让你的XBlock做你想做的事。
1)定义你的fields
第一步就是定义你的fields.这是你的XBlock将储存的数据的声明。XBlockfields有丰富的辖域机制可以让你和特定的模块和用户连接数据。有关Field的详细信息请参考:
http://xblock.readthedocs.org/en/latest/guide/xblock.html#guide-fields
2)定义你的view(视图)
视图是一个函数,创建HTML来在一个课程中展示你的block。它可能是一个你的数据简单透视图。你也可以有复杂的逻辑来决定展示什么内容。
很多XBlcok只需要一个简单的视图,叫“student_view”
你的视图不仅可以包含HTML,也可以是Javascript,css,用来支持HTML
3)定义你的handlers
如果你的XBlock是交互式的,你就需要从Javascript接收事件。一个handler是一个绑定到URL的函数。你可以使用在Javascript中的URL和服务器交流。
你可以根据需要定义多个handler,命名也是随意的。
5.测试你的XBlock
测试你的XBlock很重要,让它做你想让它做的事并在你需要的环境中运行。
要运行你的XBlock应用程序,你需要安装它。使用pip,你能安装你的XBlock,使你的工作树(你编程的代码)是安装的版本。它使得改变代码,查看更改更容易,不需要复杂的循环edit-install-run。
使用pip安装你的Block
$ cd ~/edxwork
$ pip install -e myxblock
1)使用工作台测试
最简单的测试环境是XBlockworkbench(工作台),它可以在XBlock SDK中找到
http://xblock.readthedocs.org/en/latest/getting_started.html
2)使用edX LMS测试。(学习管理系统)
参考测试文档
http://edx-developer-guide.readthedocs.org/en/latest/extending_platform/xblocks.html#testing)
6.部署你的XBlock
参考部署文档
http://edx-developer-guide.readthedocs.org/en/latest/extending_platform/xblocks.html#deploying-your-xblock
7.把你的XBlock提交到edX
如果想让你的XBlock在edx.org可用,请做下面的步骤:
1).把你的XBlock上传到一个公开的Git 仓库。我们建议Github
2). 创建一个针对edx-platform的pull请求。但在请求中不要包含你的XBlock代码。相反,在requriement file (https://github.com/edx/edx-platform/blob/master/requirements/edx/github.txt)中添加一行,指示你的XBlock要使用哪个版本。这行应该是你的pull请求中唯一更改的地方。另外,在你的pull请求描述中,请包含一个指向XBlock代码所在主机的链接。
3).edx的开发者将会看到pull请求,检查你的XBlock确保它可以和edx平台的其它部分安全的集成。
4).为了加快检查的进程,请在pull请求中包含并于你的XBlock功能的全面的描述,以至于我们能找到为你检查的最佳人选。
- XBlock的创建
- XBlock 创建与安装(新)
- edx 题库编辑xblock的安装
- Open edX安装Xblock
- XBlock 学习一
- xblock中添加日志
- Writing easily XBlock portable XModules
- Open edX 56 网 XBlock 视频插件开发(基础)
- xblock-sdk学习笔记之制作studio界面
- 角色创建界面的创建
- UCOSII创建的创建任务
- 控制器的创建和view的创建
- ClearCase 的使用: 创建VIEW, 创建Component, 创建Project
- Oracle创建存储过程、创建函数、创建包的实例
- 创建表的时候创建索引
- 创建表的时候创建索引
- ProgressBar的使用方法动态创建,静态创建
- VC6中创建Qt工程的创建
- JAVA基础——正则表达式、枚举
- qcomm boot [2]
- iframe中子页面如何接收父页面所接受的参数
- gauss 2
- DEVICE_ATTR的使用
- XBlock的创建
- Least Common Multiple
- Error 1313: RETURN is only allowed in a FUNCTION SQL Statement
- 第八周项目一 实现复数类中的运算符重载(2)
- java map遍历的原理
- iOS开发--UITextField限制输入文字的个数
- 《高效程序员的45个习惯-敏捷开发者实践》读书笔记
- Tesseract-OCR的训练与使用
- CentOS Yum 命令详解