在Open edX Xblock中获取应用程序参数

时间:2016-08-09 13:11:21

标签: openedx

我正在开发一个OpenEdx Xblock。
我需要在所有用户和所有xblock中保持一个值。 此值最终可能会更改,但只能由服务器管理员更改。
 我的想法是在 cms.env.json 中创建新的参数,并在我的xblock中检索该参数。我还没有找到这个主题的文档。

1 个答案:

答案 0 :(得分:1)

执行此操作的正确方法是将设置存储在具有以下范围的XBlock字段中:

BlockScope = TYPE
UserScope = NONE

(请参阅有关xblock范围的文档:http://edx.readthedocs.io/projects/xblock/en/latest/fields.html#xblock.fields.Scope

不幸的是,这样的范围不存在......所以你坚持使用django设置。如果您希望将此设置存储在*.env.json文件中,那么您可以从xblock中读取值:

from django.conf import settings
yourfeature = settings.FEATURES.get('yourfeature', 'defaultvalue')

不要忘记在lms.env.jsoncms.env.json中存储此功能值! (如果您在LMS和CMS中都需要此功能)