Moodle二次开发指南_设计指南.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Moodle二次开发指南_设计指南

Moodle的结构分析 模块化的扩展 特殊需求可以通过模块扩展。Moodle的M表示Modular, 就是暗示它的功能可以通过模块进行扩展。这些模块涵盖了系统主题风格( Theme)、 界面语言、 数据库模型、 课程结构、 问题格式、 导入导出格式和活动模块等各个方面。 Moodle开发社区的“Modules and plugins”数据库( /mod/data/view.php?id=6009) 中已经注册了上百种标准的和第三方开发的稳定模块, 并且在大量热衷模块开发的用户支持下, 还在不断增加。 与其他网络课程平台的交互性 在数据的保存方面, Moodle将一个课程的文件全部保存在一个目录中。这样即便不通过Moodle系统,也可以很方便地通过目录操作访问到某个课程的内容, 可以将这些文件带到其他课程平台上使用。在未来版本中, 还将支持不同平台格式的课程导入和导出, 目前已经实现的有SCORM和IMS的课程包。 Moodle数据库模型 要进行二次开发, 对一个系统的数据库模型的了解也是很必要的。因为Moodle并不需要我们进行核心代码的修改和开发, 因此在最初阶段不必作细节分析。当我们具体碰到某一个模块时, 才有必要进行深入的分析。 Moodle的数据库模型经过几年的发展已经很复杂, 为了减少这种复杂关系带来的混乱, 它采用了这样的命名方式。如: mdl_course_categories, 其中mdl是所有系统表格的前缀, course代表属于course的模块,categroies代表课程分类表, 这样既可以保证清晰的表述, 又可以避免不同模块之间数据表格的重名。由于模块部分的数据模型会随着系统模块的增加而增加,所以当你扩展模块的时候, 那部分数据模型就可能会发生变化。1.8版的数据库一共包含约180个表, 结构复杂, 故应该采用各个模块分别分析的方法来研究, 其中config、user、course、quiz、question等模块的数据模型应该优先考虑。在每次接触到某个模块的数据模型时, 必须分析到细节, 比如在设计自己的模块时, 如果需要进行权限分配, 就需要研究用户和角色的数据结构, 图3是user和role模块关系数据模型的简化图(各表的字段略)。 这个模型中mdl_user包含了用户的基本信息; mdl_user_info的三张表格用于增加用户的自定义属性; mdl_role和mdl_role_capabilities包含了系统用户的角色和各角色所拥有的能力/权限; mdl_role_assignment是mdl_user和mdl_role的关联表,保存了user和role的包含关系。 Moodle提供了ADODB数据访问抽象层来进行数据库的访问, 所以我们不需要直接编写访问数据库的代码, 只要通过抽象层的方法即可。 Moodle二次开发的形式 Moodle的二次开发重点不是对Moodle的核心代码和模块进行修改, 而是针对其外部功能模块的设计和开发以满足特定的需求, 即围绕Moodle的核心代码进行的模块开发。 熟悉目录结构 熟悉Moodle的目录结构, 可以帮助你迅速的定位文件, 进行修改。下表罗列了Moodle的主要目录及文件。Moodle在自定义后, 子目录的结构会有所不同,上述根目录的结构对相同版本来说是固定的。 Moodle主要目录和文件: 文件夹功能admin/系统管理的代码auth/验证用户基本模块及扩展模块blocks/页面 block 基本模块难度及扩展模块calendar/维护及显示日历的代码course/显示和管理课程的代码doc/Moodle的帮助文档files /显示和管理上传文件的代码lang/不同语言的对应文本, 每个目录表示一种语言, 并且和具体的模块对应lib/Moodle 的核心代码库login/登录及账号创建代码mod/Moodle 的基本模块和扩展模块pix/站点的图片theme/站点的主题包/皮肤包, 控制站点的样式user/显示和管理用户config.php包含基本的系统设置, 一般在第一次安转时设置install.php安装站点version.版本控制index.php站点首页 总体开发约定 参看: Moodle二次开发指南-代码编写指南.doc Moodle语言包的二次开发 1. Moodle语言包的结构 Moodle中几乎所有在页面上看到的文本都是从一系列的语言文件中动态获取的, 这些文件被称为Language File或者String File。 这些文件通常按照语言代码的文件夹存放在lang目录中, 比如en_uft8、zh_cn_utf8

您可能关注的文档

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档